Cómo quitar filas duplicadas de una tabla de SQL Server mediante un script


Resumen


Puede usar la siguiente secuencia de comandos para quitar filas duplicadas de una tabla de Microsoft SQL Server:
   SELECT DISTINCT *      INTO duplicate_table      FROM original_table      GROUP BY key_value      HAVING COUNT(key_value) > 1   DELETE original_table      WHERE key_value      IN (SELECT key_value             FROM duplicate_table)   INSERT original_table      SELECT *         FROM duplicate_table     DROP TABLE duplicate_table
Cuando se ejecuta este script, sigue estos pasos:
  1. Mueve una instancia de cualquier fila duplicada de la tabla original a una tabla duplicada.
  2. Elimina todas las filas de la tabla original que también residen en la tabla duplicada.
  3. Mueve las filas de la tabla duplicada a la tabla original.
  4. Quita la tabla duplicada.

Más información


Este método es simple. Sin embargo, es necesario disponer de suficiente espacio disponible en la base de datos para crear temporalmente la tabla duplicada.