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