Если вы пытаетесь найти дубликаты в одной таблице:
select c.fname, c.lname, c.email
from contacts c
group by c.fname, c.lname, c.email
having min(c.phone) <> max(c.phone);
Если вы хотите сосчитать null
как другое значение, используйте:
having min(c.phone) <> max(c.phone) or count(c.phone) <> count(*)
Вы можетепроделайте то же самое со второй таблицей:
select c.fname, c.lname, c.email
from second_table c
group by c.fname, c.lname, c.email
having min(c.address) <> max(c.address) or count(c.address) <> count(*)
Если вам нужны результаты в одном наборе результатов, используйте union
или union all
или какой-либо аналогичный механизм.