全文预览已结束
下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
SQL删除重复记录的N种方法-:select distinct * into #temp from 表truncate table 表insert 表 select * from #tempdrop table-带有标识列-备份数据select * into #temp from 表alter table #temp drop column id-删除原表数据truncate table msgtable-恢复数据并去掉重复数据insert into 表 select distinct * from #temp-delete From aa where a in ( select a From aa group by a having count(a)1)-alter table 表 add newfield int identity(1,1)delete 表where newfield not in(select min(newfield) from 表 group by 除newfield外的所有字段)alter table 表 drop column newfield-添加一个处理的标识字段alter table 表 add id int identity(1,1)go -删除重复记录delete afrom 表 a left join(select id=min(id) from 表 group by a,b)b on a.id=b.idwhere b.id is nullgo-删除处理用的标识字段alter table 表 drop column id-参考:/*一张表里面以两个字段为唯一字段,当几条记录的这两个字段完全相同时,需要删除重复项,如下表 a b c d 1 2 3 4 1 5 3 5 1 2 7 9 以a、b为唯一字段,第一条和第三条的a、b完全相同,所以,需要删除第一条记录1 2 3 4 或者第三条记录1 2 7 9 即如下结果: a b c d 1 2 3 4 1 5 3 5 或 a b c d 1 5 3 5 1 2 7 9 请问各位大侠这种sql语句怎么写 */ CREATE TABLE Tb1(id int, a varchar(255), b varchar(255), c varchar(255), d varchar(255)INSERT Tb1(id, a, b, c, d)SELECT 1, 1,2,3,4UNION ALL SELECT 2, 1,5,3,5UNION ALL SELECT 3, 1,2,7,9UNION ALL SELECT 4, 1,4,7,6delete Tb1 where id not in (select max(id) from Tb1 group by a,b )select * from tb1drop table tb1如果要同时删除第一和第三行即如下结果:a b c d1 5 3 5语句如下:delete m from tb tinner join(select a ,bfrom tbgroup by a , bhaving count(*)1)non m.a = n.a and m.b = n.b或delete * from tb as m,(select a ,bfrom tbgroup by a , bhaving count(*)1)nwhere m.a = n.a and m.b = n.b-在几千条记录里,存在着些相同的记录,如何能用SQL语句,删除掉重复的呢?谢谢!1、查找表中多余的重复记录,重复记录是根据单个字段(peopleId)来判断select * from peoplewhere peopleId in (select peopleId from people group by peopleId having count(peopleId) 1)2、删除表中多余的重复记录,重复记录是根据单个字段(peopleId)来判断,只留有rowid最小的记录delete from peoplewhere peopleId in (select peopleId from people group by peopleId having count(peopleId) 1)and rowid not in (select min(rowid) from people group by peopleId having count(peopleId )1)3、查找表中多余的重复记录(多个字段)select * from vitae awhere (a.peopleId,a.seq) in (select peopleId,seq from vitae group by peopleId,seq having count(*) 1)4、删除表中多余的重复记录(多个字段),只留有rowid最小的记录delete from vitae awhere (a.peopleId,a.seq) in (select peopleId,seq from vitae group by peopleId,seq having count(*) 1)and rowid not in (select min(rowid) from vitae group by peopleId,seq having count(*)1)5、查找表中多余的重复记录(多个字段),不包含rowid最小的记录select * from vitae awhere (a.peopleId,a.seq) in (select peopleId,seq from vitae
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 敏捷项目经理培训与认证指南
- 反应香精配制工安全操作能力考核试卷含答案
- 选煤干燥工安全强化测试考核试卷含答案
- 中药油剂工安全素养能力考核试卷含答案
- 化工检修电工安全操作测试考核试卷含答案
- 采油工创新应用考核试卷含答案
- 投资银行部产品设计经理投资分析报告模板
- 卷烟封装设备操作工岗前安全素养考核试卷含答案
- 医用消毒、低温设备组装调试工岗前技术实操考核试卷含答案
- 民宿管家风险评估竞赛考核试卷含答案
- 2025四川省现代种业发展集团有限公司部分权属企业社会化招聘13人备考题库附答案详解(综合卷)
- 2025年士官转业考试题库及答案
- 2026届各地名校高三语文联考11月汇编(四)含真题呈现+审题指导+立意参考+高分范文
- 2025至2030中国丁基橡胶行业项目调研及市场前景预测评估报告
- 2026年感控工作计划
- 湖南气象局招聘笔试题目及答案
- 财务代理记账合同2025年修订版发布
- 城市广场综合改造工程可行性研究报告
- 四川绵阳燃气集团有限公司兴绵燃气有限责任公司招聘笔试题库2025
- 电子围栏系统部署实施方案
- 2025-2026学年青岛版三年级数学上册期中考试测试题及答案解析(第1-4单元)
评论
0/150
提交评论