Linwind – De Windows a Linux

Eliminar rexistros duplicados en Mysql

Escrito en: Tutoriales o día 1 Maio 2009

Eliminar registros duplicados en Mysql

É un problema que nos atopamos moitas veces cando non temos ningún control de contido duplicado, Como podemos eliminar eses rexistros de forma sinxela?

O primeiro que temos que facer copiar nunha nova táboa só os contidos que non están duplicados, para iso temos usar GROUP BY do seguinte xeito:

  • CREATE TABLE taboa_temporal AS SELECT * FROM taboa GROUP BY (Columna_contido_duplicado);

Unha vez feito isto xa teremos na táboa táboa_temporal todo o contido da táboa sen contido duplicado na Columna Columna_contido_duplicado. O seguinte que temos que facer é eliminar a táboa que usamos e renombrar a que acabamos de crear co nome desta:

  • DROP TABLE taboa;
  • RENAME TABLE taboa_temporal TO táboa;

Agora xa terás a base de datos coa Columna Columna_contido_duplicado sen contido duplicado, para evitar que volva suceder podes pór unha restrición a esa columna podes pola como PRIMARY KEY ou UNIQUE

Clic aquí para ayuda.

Deixa unha resposta

Son maior de idade, comprendo a Política de privacidad e que o meu nome xunto o texto aparecerán na sección de comentarios.

Acepto a Política de privacidad.