我有一个具有唯一ID的表,然后是一些字段。我想删除所有dupliacte行,只保留一个,id最高的那个。
例如假设有一个包含3个字段的表:RECORD_ID
,FIELD_ONE
,FIELD_TWO
这个查询允许我删除FIELD_ONE
和FIELD_TWO
具有相同值的所有记录,但RECORD_ID
以外的记录除外?
答案 0 :(得分:0)
实测值:
with cte
as
(
select *, row_number() over(partition by FIELD_ONE, FIELD_TWO order by RECORD_ID desc) RowNumber
from TestTable
)
delete cte
where RowNumber > 1