Hola!, necesito hacer una consulta SQL desde PHP pero no estoy seguro se se podrá hacer.
Tengo (a modo de ejemplo):
Tabla 1 (id, nombre, apellido, dirección)
Tabla 2 (id, nombre, otro nombre, otro nombre 33)
Tabla 3 (id, nombre, otro nombre 44, otro nombre 55)
Se que INNER JOIN se puede utilizar siempre y cuando las tablas sean iguales. Se que mis 3 tablas son distintas, pero solo necesito id y nombre que son comúnes a todas.
¿Hay alguna manera de hacer esto?.
jmdoren
No recomendado
Verificado por Whatsapp
¡Usuario con pocos negocios! ¡Utiliza siempre saldo de Forobeta!
W3Schools offers free online tutorials, references and exercises in all the major languages of the web. Covering popular subjects like HTML, CSS, JavaScript, Python, SQL, Java, and many, many more.
Ya me funcionó, había puesto un símbolo mal.
Lo que me parece raro es que según leí para que funciones el UNION / UNION ALL las tablas tienen que tener los mismos campos, y sin embargo me funcionó correctamente a pesar de que en mis tablas sean distintos.
¿Será porque solo llamo a los que son iguales?, pregunto por si esto puede llegar a dar problemas a futuro.
Ya me funcionó, había puesto un símbolo mal.
Lo que me parece raro es que según leí para que funciones el UNION / UNION ALL las tablas tienen que tener los mismos campos, y sin embargo me funcionó correctamente a pesar de que en mis tablas sean distintos.
¿Será porque solo llamo a los que son iguales?, pregunto por si esto puede llegar a dar problemas a futuro.
No tienen que ser iguales las tablas, tienen que ser iguales las selecciones. Seguramente el que escribió eso que leiste era alguien que llegó a esa conclusión porque solo usaba "*" en los select o porque llama solo "tabla" a la tabla resultante de la consulta.
De hecho, incluso si en la tabla las columnas tienen un nombre distinto puedes hacer algo como esto:
(SELECT id, username as nombre FROM tabla1) UNION (SELECT id, motivo as nombre FROM tabla2)
Con eso las selecciones ya serían iguales y podrías unirlas.