博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
如何删除 SQL Server 表中的重复行
阅读量:5925 次
发布时间:2019-06-19

本文共 639 字,大约阅读时间需要 2 分钟。

第一种:有主键的重复行,就是说主键不重复,但是记录的内容重复 比如人员表tab ,主键列id,身份证编号idcard 当身份证重复的时候,保留最小id值的记录,其他删除 delete a from tab a where exists(select 1 from tab where idcard = a.idcard and id < a.id) 第二种:没有主键的重复行,这种重复的意思是两条记录完全重复,所有字段的值都一样,而且表因为设计失误没有主键 这种可以有两种方式删除 1. 加标示列 alter table tab add id int identity(1,1) ,加上以后,这个情况就变成了第一种情况,删除语句同上 2. 中间表,把重复数据导出来,删掉原表数据,再吧数据导回去 --导出 select a,b,c,d from tab into #tab group by a, b,c,d having count(1)  > 1 --删除 delete a from tab t1 inner join #tab t2 on t1.a = t2.a and t1.b = t2.b and t1.c = t2.c and t1.d = t2.d --导回 insert into tab select * from #tab 这两种情况根据实际情况自行选用

转载于:https://www.cnblogs.com/sdusrz/p/3936515.html

你可能感兴趣的文章
Pressed状态和clickable,duplicateParentState的关系
查看>>
视图加载时自动执行铵钮事件
查看>>
私活利器,docker快速部署node.js应用
查看>>
《随笔记录》20170310
查看>>
网站分析系统
查看>>
一站式解决,Android 拍照 图库的各种问题
查看>>
JavaScript匿名函数以及在循环中的匿名函数
查看>>
中国HBase技术社区第五届MeetUp ——HBase技术解析及应用实践(深圳站)
查看>>
javascript高程3 学习笔记(三)
查看>>
lsof命令
查看>>
阿里云云计算ACP考试知识点(标红为重点)
查看>>
Unhandled event loop exception PermGen space
查看>>
换种方式去分页(转)
查看>>
阿里云MaxCompute香港开服 将引入更多人工智能服务
查看>>
正则 js截取时间
查看>>
linux下ip命令用法
查看>>
抛开flash,自己开发实现C++ RTMP直播流播放器
查看>>
PostgreSQL 统计信息pg_statistic格式及导入导出dump_stat - 兼容Oracle
查看>>
云堆栈三大服务模式解析
查看>>
阿里云与中国联通首个公共云平台上线
查看>>