sql >> Base de Datos >  >> RDS >> Sqlserver

Eliminar duplicados de conjuntos de datos grandes (>100 millones de filas)

Si está utilizando SQL Server, puede usar la expresión eliminar de la tabla común:

with cte as (
    select row_number() over(partition by SICComb, NameComb order by Col1) as row_num
    from Table1
)
delete
from cte
where row_num > 1

Aquí todas las filas estarán numeradas, obtienes una secuencia propia para cada combinación única de SICComb + NameComb . Puede elegir qué filas desea eliminar eligiendo order by dentro del over cláusula.