Jan*_*jti 7 sql sql-server duplicate-removal
我从这个链接有这个代码:如何删除重复的行?
;WITH cte
AS (SELECT ROW_NUMBER() OVER (PARTITION BY person_id, date_work, hours
ORDER BY ( SELECT 0)) RN
FROM work_hours)
DELETE FROM cte
WHERE RN > 1
Run Code Online (Sandbox Code Playgroud)
是否可以删除第一个输入的重复行或我应该有一个额外的列date_of_entry?我想这样做,如果我输入相同的date_work和不同的小时,PARTITION BY person_id, date_work它删除随机重复.
如果不可能,我怎样才能删除更高时间的重复项?
加 order by hours desc
;WITH cte
AS (SELECT ROW_NUMBER() OVER (PARTITION BY person_id, date_work
ORDER BY hours DESC) RN
FROM work_hours)
DELETE FROM cte
WHERE RN > 1
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
1573 次 |
| 最近记录: |