Foros del Web » Programación para mayores de 30 ;) » Bases de Datos General » Mysql »

Como obtener los registros duplicados de una tabla

Estas en el tema de Como obtener los registros duplicados de una tabla en el foro de Mysql en Foros del Web. Buenas tardes con tod@s. Tengo una tabla de 100,000 registros y necesito obtener los duplicados. Si corro la siguiente consulta: "alter ignore table bc_01_02 add ...
  #1 (permalink)  
Antiguo 20/09/2013, 11:45
Avatar de Ruplex  
Fecha de Ingreso: octubre-2007
Ubicación: Quito, Ecuador
Mensajes: 50
Antigüedad: 16 años, 6 meses
Puntos: 0
Como obtener los registros duplicados de una tabla

Buenas tardes con tod@s.

Tengo una tabla de 100,000 registros y necesito obtener los duplicados. Si corro la siguiente consulta: "alter ignore table bc_01_02 add unique index (idbc_01);", la consulta me devuelve la tabla sin los duplicados.

Por ejemplo, si tuve 20,000 duplicados, la tabla me queda de 80,000. Lo que yo quiero obtener son esos 20,000 registros.

Alguien sabe cómo puedo realizar un query para obtener esos 20,000 registros?

De antemano, les agradezco por su colaboración.

Saludos.
  #2 (permalink)  
Antiguo 20/09/2013, 12:46
Avatar de gnzsoloyo
Moderador criollo
 
Fecha de Ingreso: noviembre-2007
Ubicación: Actualmente en Buenos Aires (el enemigo ancestral)
Mensajes: 23.324
Antigüedad: 16 años, 5 meses
Puntos: 2658
Respuesta: Como obtener los registros duplicados de una tabla

Si aplicaste el ALTER IGNORE... sobre la tabla, ya no deberían existir esos registros.

Manual de referencia
Cita:
IGNORE es una extensión MySQL a SQL estándar. Controla cómo funciona ALTER TABLE si hay duplicados en las claves primarias en la nueva tabla o si ocuren advertencias cuando está activo el modo STRICT. Si no se especifica IGNORE la copia se aborta y no se ejecuta si hay errores de clave duplicada. Si se especifica IGNORE , entonces para duplicados con clave única, sólo se usa el primer registro. El resto de registros conflicitivos se borran. Los valores erróneos se truncan al valor más cercano aceptable.
Fuera de eso, para lograr los datos que buscas se usa una combinación de GROPU BY, HAVING y subconsultas... Aunque con un numero elevado de registros, puede ser poco performántico.
__________________
¿A quién le enseñan sus aciertos?, si yo aprendo de mis errores constantemente...
"El problema es la interfase silla-teclado." (Gillermo Luque)

Etiquetas: duplicados, registros, tabla
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 03:55.