WITH CTE (
[ColumnName]
,[DuplicateCount]
)
AS(
SELECT
[ColumnName]
,[DuplicateCount]
,ROW_NUMBER() OVER(PARTITION BY [ColumnName]
ORDER BY [ColumnName]
AS DuplicateCount
FROM sample_table
)
DELETE
FROMCTE
WHERE (DuplicateCount > 1)
I think this an efficient way.