Encontrar valores duplicados en una tabla SQL
Es fácil de encontrarduplicates
con un campo:
SELECT name, COUNT(email)
FROM users
GROUP BY email
HAVING COUNT(email) > 1
Entonces si tenemos una mesa
ID NAME EMAIL
1 John [email protected]
2 Sam [email protected]
3 Tom [email protected]
4 Bob [email protected]
5 Tom [email protected]
Esta consulta nos daráJohn, Sam, Tom, Tom porque todos tienen lo mismoemail
.
Sin embargo, lo que quiero es obtener duplicados con el mismoemail
yname
.
Es decir, quiero obtener "Tom", "Tom".
La razón por la que necesito esto: cometí un error y me permitieron insertar duplicadosname
yemail
valores. Ahora necesitoeliminar / cambiar los duplicados, así que necesitoencontrar ellos primero.