GROUP BY + HAVING COUNT(*) > 1 по ключевым колонкам.
Пример
SELECT name, email, COUNT(*) AS CountOf
FROM users
GROUP BY name, email
HAVING COUNT(*) > 1;
Разбор
- Выберите business key (email, phone+name).
- Для удаления дубликатов —
ROW_NUMBER() или self-join с id > id2.
- UNIQUE constraint предотвращает повторное появление.
Итог
GROUP BY + HAVING COUNT>1 находит duplicate groups.