sql >> Base de Datos >  >> RDS >> Mysql

MYSQL:seleccione solo si la fila en LEFT JOIN no está presente

La combinación izquierda producirá null filas para las discrepancias.
Son esos null filas en las que necesita filtrar.

SELECT * FROM mail  
LEFT JOIN block ON (block.blocker = 'Bob') 
WHERE block.blocker IS NULL

Es un poco extraño unirse a un valor fijo, sin embargo, una unión más común (dadas sus tablas) sería:

SELECT * FROM mail  
LEFT JOIN block ON (block.blocker = mail.receiver
                and block.blocked = mail.sender)<<-- these should match
WHERE block.blocker IS NULL                     <<-- select only mismatches
AND mail.receiver like 'bob';