Hola,
Tengo una consulta con join, la cuestión es que dos tablas tienen columnas con el mismo nombre pero datos distintos y cuando no se cumple la condición del left loin y llena con NULL la segunda tabla me coge el valor NULL y no el otro que si tiene un valor válido.
Como puedo hacer para leer los datos de una u otra tabla, voy a poner un ejemplo que seguro que no me he explicado.
Código:
$query="SELECT * FROM articulos
INNER JOIN autor ON articulos.autor_id = autor.autor_id
LEFT JOIN tema ON articulos.tematica = tema.tematica
WHERE articulos.id=500";
$result = mysql_query($query);
$row=mysql_fetch_array($result);
Es posible que el LEFT JOIN no se cumpla y rellene con NULL los campos de la tabla tema y entonces artículos tenga campos con valor que coinciden en nombre con los que tiene tema.
Lo que quiero hacer es leer los campos según la tabla, no se, por ejemplo de la forma $row['nombre_tabla.nombre_campo'], como puedo hacer esto?, no tendré que cambiar el nombre de las columnas.
Es posible hacer que un LEFT JOIN en lugar de llenar los campos con NULL no incluya ningun campo? que sólo los incluya si se cumple la condición.
Muchas gracias