Ya estoy inscrito ¿Todavía no tienes acceso? Nuestros Planes
Ya estoy inscrito ¿Todavía no tienes acceso? Nuestros Planes
0
respuestas

[Sugerencia] Una manera más fácil de cambiar entre LEFT JOIN y RIGHT JOIN

El ingeniero Álvaro cambia mucho la sintaxis de la consulta para el RIGHT JOIN y sólo es cuestión de intercambiar de lugar el nombre de las tablas juntos con sus respectivos alias. La clave aquí es que en el LEFT JOIN manda la tabla de la izquierda (TABLA_DE_CLIENTES A) y en el RIGHT JOIN manda la tabla de la derecha (TABLA_DE_CLIENTES A)

...
    TABLA_DE_CLIENTES A
LEFT JOIN
    FACTURAS B
...
...
    FACTURAS B
RIGHT JOIN
    TABLA_DE_CLIENTES A
...

Y listo, lo demás no se modifica. Ahora bien, comparto como quedan de forma completa:

SELECT
    DISTINCT A.DNI AS DNI_CLIENTE,
    A.NOMBRE,
    A.CIUDAD,
    B.DNI AS DNI_FACTURA
FROM
    TABLA_DE_CLIENTES A
LEFT JOIN
    FACTURAS B
ON
    A.DNI = B.DNI
WHERE
    B.DNI IS NULL;
SELECT
    DISTINCT A.DNI AS DNI_CLIENTE,
    A.NOMBRE,
    A.CIUDAD,
    B.DNI AS DNI_FACTURA
FROM
    FACTURAS B
RIGHT JOIN
    TABLA_DE_CLIENTES A
ON
    A.DNI = B.DNI
WHERE
    B.DNI IS NULL;

A forma de comparación muestro la consulta de la clase la cual también es correcta pero considero que hace varias modificaciones innecesarias:

SELECT
    DISTINCT B.DNI,
    B.NOMBRE,
    B.CIUDAD,
    A.DNI
FROM
    FACTURAS A
RIGHT JOIN
    TABLA_DE_CLIENTES B
ON
    A.DNI = B.DNI
WHERE
    A.DNI IS NULL;

¿Qué opinan de mi análisis?