T-SQL:删除多字段重复数据

Person表原始数据如下图:

ID Name Sex CreatedOn
1 黄明 男 2011-12-26
2 黄明 男 2011-12-26
3 马圈 女 2011-12-28
4 马圈 女 2011-12-28

欲得到的结果是:

ID Name Sex CreatedOn
1 黄明 男 2011-12-26
3 马圈 女 2011-12-28

删除语句如下:

with Source as (
select ROW_NUMBER() OVER(PARTITION BY Name,Sex,CreatedOn ORDER BY ID) RowNumber,*
from Person )
delete from Person
where ID in (select ID from  Source where RowNumber>1)

转载于:https://www.cnblogs.com/focuses/archive/2011/12/26/2301812.html

猜你喜欢

转载自blog.csdn.net/weixin_34389926/article/details/93486882