Quitar filas duplicadas de una tabla de SQL Server mediante un script
En este artículo se muestra la secuencia de comandos que se puede usar para quitar filas duplicadas de una tabla de SQL Server.
Versión del producto original: SQL Server
Número de KB original: 70956
Resumen
Puede usar el siguiente script 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:
- Mueve una instancia de cualquier fila duplicada en la tabla original a una tabla duplicada.
- Elimina todas las filas de la tabla original que también residen en la tabla duplicada.
- Vuelve a mover las filas de la tabla duplicada a la tabla original.
- Elimina la tabla duplicada.
Más información
Este método es sencillo. Sin embargo, es necesario disponer de suficiente espacio disponible en la base de datos para crear temporalmente la tabla duplicada.