Я немного не в курсе деталей того, как MySQL работает с нулями, но вот две вещи, которые нужно попробовать:
SELECT * FROM match WHERE id NOT IN
( SELECT id FROM email WHERE id IS NOT NULL) ;
SELECT
m.*
FROM
match m
LEFT OUTER JOIN email e ON
m.id = e.id
AND e.id IS NOT NULL
WHERE
e.id IS NULL
Второй запрос выглядит нелогичным, но он выполняет условие соединения, а затем условие where. Это тот случай, когда объединения и предложения не эквивалентны.