mysql - unir - relacionar tablas en php
¿Cómo unir tablas de MySQL usando una columna anulable? (1)
Use el operador igual de seguro NULL :
SELECT * FROM A JOIN B ON A.C <=> B.C
Estoy un poco fuera de práctica con MySQL, así que espero encontrar algún consejo para mi problema aquí.
Básicamente tengo dos tablas, las llamo A y B solo por conveniencia. Ambas tablas tienen una columna anulable C de tipo varchar
. Cuando me uno a A y B usando C, pierdo todas las filas donde C es NULL en cualquiera de las tablas. Sé que esto es normal en MySQL pero lo que me gustaría obtener es una unión que incluya combinaciones de filas donde C sea NULL en ambas tablas. Descubrí que la siguiente consulta parece funcionar bien.
SELECT *
FROM A JOIN B
ON (A.C IS NULL AND B.C IS NULL) OR (A.C IS NOT NULL AND B.C IS NOT NULL AND A.C = B.C)
Entonces, mi pregunta es: ¿es esta consulta lo mejor que puedo obtener o hay una manera de mejorar esta unión? ¡Gracias!