sql >> Base de Datos >  >> RDS >> Mysql

Eliminar duplicados en una gran tabla MySql

Esto llenará NEW_TABLE con valores únicos y el id el valor es la primera identificación del grupo:

INSERT INTO NEW_TABLE
  SELECT MIN(ot.id),
         ot.city,
         ot.post_code,
         ot.short_ccode
    FROM OLD_TABLE ot
GROUP BY ot.city, ot.post_code, ot.short_ccode

Si desea el valor de identificación más alto por grupo:

INSERT INTO NEW_TABLE
  SELECT MAX(ot.id),
         ot.city,
         ot.post_code,
         ot.short_ccode
    FROM OLD_TABLE ot
GROUP BY ot.city, ot.post_code, ot.short_ccode