Linwind – De Windows a Linux

Eliminar registros duplicados en Mysql

Escrito en: Tutoriales a día 1 Mayo 2009

Es un problema que nos encontramos muchas veces cuando no tenemos ningún control de contenido duplicado, ¿Como podemos eliminar esos registros de forma sencilla?

Lo primero que tenemos que hacer copiar en una nueva tabla solo los contenidos que no están duplicados, para ello tenemos usar GROUP BY de la siguiente manera:

  • CREATE TABLE tabla_temporal AS SELECT * FROM tabla GROUP BY (Columna_contenido_duplicado);

Una vez hecho esto ya tendremos en la tabla tabla_temporal todo el contenido de tabla sin contenido duplicado en la Columna Columna_contenido_duplicado. Lo siguiente que tenemos que hacer es eliminar la tabla que usamos y renombrar la que acabamos de crear con el nombre de esta:

  • DROP TABLE tabla;
  • RENAME TABLE tabla_temporal TO tabla;

Ahora ya tendrás la base de datos con la Columna Columna_contenido_duplicado sin contenido duplicado, para evitar que vuelva a suceder puedes poner una restricción a esa columna puedes ponerla como PRIMARY KEY o UNIQUE

Clic aquí para ayuda.

3 respuestas to “Eliminar registros duplicados en Mysql”




Deja una respuesta

Cuando comenta está aceptando la Política de privacidad.