根据属性多少删除指定条件的重复记录!!!

where col1 in (select col1 from tb as t where t.col1=col1 group by col1 having count(col1)>1) --------根据单属性查重复值
----上面运行结果如下:---
col1   col2
1       a
1       a
1       a
1       a
2       c
2       d
-----------------------
alter table tb add id int identity(1,1)---------加入一标识列,为了处理删除group 中!min(id)的重复记录
go
delete from tb
where col1  in (select  col1 from tb  group  by  col1  having  count(col1) > 1)
and id not in (select min(id) from  tb  group by col1  having count(col1 )>1)----删除组中不是最小ID的重复记录
----上面运行结果如下:---
col1   col2    id
1       a      1
2       c      5
3       e      7
4       r      8
 ----删除多个属性重复记录同理,

 


 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值