Deleting duplicate record in SQL Server

前端 未结 2 743
日久生厌
日久生厌 2020-12-01 14:28

I have written a query to remove duplicate records from a table

;WITH a as
(
SELECT Firstname,ROW_NUMBER() OVER(PARTITION by Firstname, empID ORDER BY First         


        
相关标签:
2条回答
  • 2020-12-01 14:58
     DELETE duplicates FROM
    (SELECT ROW_NUMBER() OVER (PARTITION BY firstname, lastname, EMPNO, salary,dept  ORDER BY empno) cnt
     FROM tblEmp)  duplicates
    WHERE duplicates.Cnt > 1
    
    0 讨论(0)
  • 2020-12-01 15:12

    You need to reference the CTE in the delete statement...

    WITH a as
    (
    SELECT Firstname,ROW_NUMBER() OVER(PARTITION by Firstname, empID ORDER BY Firstname) 
    AS duplicateRecCount
    FROM dbo.tblEmployee
    )
    --Now Delete Duplicate Records
    DELETE FROM a
    WHERE duplicateRecCount > 1
    
    0 讨论(0)
提交回复
热议问题