mssql重复记录删除的7种方法
来源:爱站网时间:2022-11-16编辑:网友分享
想要在mssql数据库删除重复记录,我们可以用下列七种方法来处理,朋友们可以选择最适合的方式来操作,能让你事半功倍。下面的时间就交给爱站技术频道小编,看看文章带来的资料能不能满足你。
话不多说,请看代码:
if not object_id('Tempdb..#T') is null drop table #T Go Create table #T([ID] int,[Name] nvarchar(1),[Memo] nvarchar(2)) Insert #T select 1,N'A',N'A1' union all select 2,N'A',N'A2' union all select 3,N'A',N'A3' union all select 4,N'B',N'B1' union all select 5,N'B',N'B2' Go
--I、Name相同ID最小的记录(推荐用1,2,3),保留最小一条
方法1:
delete a from #T a where exists(select 1 from #T where Name=a.Name and ID
方法2:
delete a from #T a left join (select min(ID)ID,Name from #T group by Name) b on a.Name=b.Name and a.ID=b.ID where b.Id is null
方法3:
delete a from #T a where ID not in (select min(ID) from #T where Name=a.Name)
方法4(注:ID为唯一时可用):
delete a from #T a where ID not in(select min(ID)from #T group by Name)
方法5:
delete a from #T a where (select count(1) from #T where Name=a.Name and ID
方法6:
delete a from #T a where ID(select top 1 ID from #T where Name=a.name order by ID)
方法7:
delete a from #T a where ID>any(select ID from #T where Name=a.Name) select * from #T
爱站技术频道小编带来的上述文章内容有没有让你获取不一样的知识点,我们网站提供了海量技术文章给大家查阅,这对想学习的朋友提供了一个很好的环境。
上一篇:MSSQL查询方法有哪些