Поиск повторяющихся значений в таблице SQL
Это легко найтиduplicates
с одним полем:
SELECT name, COUNT(email)
FROM users
GROUP BY email
HAVING COUNT(email) > 1
Так что, если у нас есть стол
ID NAME EMAIL
1 John asd@asd.com
2 Sam asd@asd.com
3 Tom asd@asd.com
4 Bob bob@asd.com
5 Tom asd@asd.com
Этот запрос даст намДжон, Сэм, Том, Том потому что все они имеют одинаковоеemail
.
Тем не менее, я хочу получить дубликаты с тем жеemail
а такжеname
.
То есть я хочу получить "Томь", "Томь".
Причина, по которой мне это нужно: я допустил ошибку и позволил вставить дубликатname
а такжеemail
ценности. Теперь мне нужноудалить / изменить дубликаты, так что мне нужнонаходить их в первую очередь.