У меня странное требование. Мне нужно найти повторяющиеся записи контактов в моей базе данных (должно быть просто). Моя проблема в том, что я должен сопоставить по имени, фамилии и ЛЮБОМУ из полей электронных писем, совпадающих между собой.
Exemple:
FirstName | LastName | Email | WorkEmail | AnotherEmail
John Smith jh@jh.com test@test.com yougettheIdea.com
John Smith test@test.com
John Smith imAdifferent.jh.com
Мне нужно Определить в этом примере, что Джон Смит в строках 1 и 2 является дублированной записью, а в строке 3 - нет. По сути, мне нужно запросить FirstName, соответствующее FirstName, LastName, соответствующее LastName, и любое из полей электронной почты, соответствующее любому из полей ... Возможно ли это вообще?
Я получил это для сопоставления по имени и фамилии , но электронных писем для меня слишком много:
SELECT * FROM
(SELECT "FirstName","LastName","Email",","WorkEmail","AnotherEmail", count(*)
OVER
(PARTITION BY
"FirstName",
"LastName"
) AS count
FROM Contact) tableWithCount
WHERE tableWithCount.count > 1 ORDER BY count DESC;