När du använder LEFT JOIN
, måste du sätta begränsningarna för den underordnade tabellen i ON
klausul. Annars, när du testar dessa fält, kommer du bara att matcha rader som inte är NULL, vilket motsäger AND mail_log.list_id IS NULL
testa.
SELECT mail_list.*
FROM mail_list
LEFT JOIN mail_log ON mail_log.list_id = mail_list.list_id
AND mail_log.send_date = '2016-07-12'
AND mail_log.location_id = '2'
WHERE mail_log.list_id IS NULL