1)创建表
CREATE TABLE [dbo].[TEST] (
[ID] [numeric](18, 0) IDENTITY (1, 1) NOT NULL PRIMARY key,
[NAME] [varchar] (200) COLLATE Chinese_PRC_CI_AS NULL ,
[REMARK] [varchar] (1024) COLLATE Chinese_PRC_CI_AS NULL ,
[STEP] [int] NULL
)
GO
2)插入数据
insert into TEST values('d','d',3)
insert into TEST values('d','d',3)
insert into TEST values('dk','dk',3)
insert into TEST values('dk','dk',3)
3)根据step删除,如果NAME和REMARK一样,就删除小的记录
delete from TEST where ID not in (select max(ID) from TEST group by NAME,REMARK,STEP) and STEP=3