查询实现删除
查询实现删除
if object_id('t0807') is not nulldrop table t0807
go
create table t0807(AutoID int identity(1,1) primary key,[id] int,username varchar(10))
go
insert into t0807
select 1,'1' union all
select 4,'1' union all
select 4,'2' union all
select 6,'2' union all
select 2,'3' union all
select 7,'3'
go
--主键AutoID
delete from t0807
where AutoID not in
(
--查找出最小值
select AutoID from t0807 a
where [id]<=
(select min([id]) from t0807 b where a.username=b.username)
)
go
select * from t0807
(所影响的行数为 6 行)
(所影响的行数为 3 行)
AutoID id username
----------- ----------- ----------
1 1 1
3 4 2
5 2 3
(所影响的行数为 3 行)