位置: 编程技术 - 正文

sql删除重复数据的详细方法(sql删除重复数据只保留一条日期最大的)

编辑:rootadmin

一. 删除完全重复的记录

完全重复的数据,通常是由于没有设置主键/唯一键约束导致的。测试数据:

(1) 借助临时表

利用DISTINCT得到单条记录,删除源数据,然后导回不重复记录。如果表不大的话,可以把所有记录导出一次,然后truncate表后再导回,这样可以避免delete的日志操作。(2) 使用ROW_NUMBER

如果多个表有完全重复的行,可以考虑通过UNION将多个表联合,插到一个新的同结构的表,SQL Server会帮助去掉表和表之间的重复行。

二. 删除部分重复的记录

部分列重复的数据,通常表上是有主键的,可能是程序逻辑造成了多行数据列值的重复。测试数据:

(1) 唯一索引

唯一索引有个忽略重复建的选项,在创建主键约束/唯一键约束时都可以使用这个索引选项。(2) 借助主键/唯一键来删除通常会选择主键/唯一键的最大/最小值保留,其他行删除。以下只保留重复记录中c1最小的行。--或者 如果要保留重复记录中的第N行,可以参考.取分组中的某几行。(3) ROW_NUMBER和删除完全重复记录的写法基本一样。SQL删除重复数据只保留一条 (下面的代码,很多网友反馈错误,大家多测试)用SQL语句,删除掉重复项只保留一条在几千条记录里,存在着些相同的记录,如何能用SQL语句,删除掉重复的呢1、查找表中多余的重复记录,重复记录是根据单个字段(peopleId)来判断 select * from people where peopleId in (select peopleId from people group by peopleId having count(peopleId) > 1) 2、删除表中多余的重复记录,重复记录是根据单个字段(peopleId)来判断,只留有rowid最小的记录 delete from people where peopleName in (select peopleName from people group by peopleName having count(peopleName) > 1) and peopleId not in (select min(peopleId) from people group by peopleName having count(peopleName)>1) 3、查找表中多余的重复记录(多个字段) select * from vitae a where (a.peopleId,a.seq) in (select peopleId,seq from vitae group by peopleId,seq having count(*) > 1) 4、删除表中多余的重复记录(多个字段),只留有rowid最小的记录 delete from vitae a where (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 a where (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) 6.消除一个字段的左边的第一位:update tableName set [Title]=Right([Title],(len([Title])-1)) where Title like '村%'7.消除一个字段的右边的第一位:update tableName set [Title]=left([Title],(len([Title])-1)) where Title like '%村'8.假删除表中多余的重复记录(多个字段),不包含rowid最小的记录 update vitae set ispass=-1where peopleId in (select peopleId from vitae group by peopleId

推荐整理分享sql删除重复数据的详细方法(sql删除重复数据只保留一条日期最大的),希望有所帮助,仅作参考,欢迎阅读内容。

sql删除重复数据的详细方法(sql删除重复数据只保留一条日期最大的)

文章相关热门搜索词:sql删除重复数据语句,sql删除重复数据语句,sql删除重复数据保留一条最近日期的数据,sql删除重复数据保留其中一条,sql删除重复数据并保留某个值最大的,sql删除重复数据保留其中一条,sql删除重复数据语句,sql删除重复数据保留其中一条,内容如对您有帮助,希望把文章链接给更多的朋友!

SQL Server中删除重复数据的几个方法 方法一declare@maxinteger,@idintegerdeclarecur_rowscursorlocalforselect主字段,count(*)from表名groupby主字段havingcount(*)1opencur_rowsfetchcur_rowsinto@id,@maxwhile@@fetch_status=0beginselec

sql 语句练习与答案 1学生表studentS#学号,sname姓名,difdate日期,班级grade2课程表coursec#课程号,名字cname3成绩单scores#学号c#课程号成绩score--1统计每个班级有多少人selectgrade,

SQLServer 报错误(服务没有及时响应或控制请求)的解决方法 今天启动SQLServer时报错误错误如下所示:发生错误-(服务没有及时响应或控制请求。),此时正在MSSQLServer服务上执行该服务操作。我立即

标签: sql删除重复数据只保留一条日期最大的

本文链接地址:https://www.jiuchutong.com/biancheng/347456.html 转载请保留说明!

上一篇:深入C++ string.find()函数的用法总结(深入3DSTUDIOMAX)

下一篇:SQL Server中删除重复数据的几个方法(sql server中删除触发器用)

  • 增值税发票能不能报销
  • 股东投资的钱放在哪里
  • 经营性负债的作用
  • 交易性金融资产的交易费用计入哪里
  • 减免企业所得税怎么算
  • 个税申报和工资表不符
  • 代销货物收取手续怎么写
  • 企业清算所得税申报表清算期间
  • 建筑公司收到劳务费
  • 账户未认证
  • 收到银行退回的银行汇票多余款
  • 属于制造费用的有
  • 股权转让资本公积怎么处理
  • 小规模收到货运专用发票
  • 安装工程发票怎么开
  • 劳务派遣企业差额扣除占比过高怎么办
  • 在公司发现问题该说吗
  • 总分机构账务处理
  • 母子公司可以汇资金吗
  • 分担总部费用
  • 员工入职体检表格模板
  • 水电费的增值税计入什么科目
  • 公司发放的车补扣个人所得税吗
  • 票据贴现业务的风险
  • 1697510490
  • 工会经费缴纳比例是哪里规定的
  • cmos电池耗尽
  • 调解仲裁法什么时候实施
  • 如何给网页添加水印
  • php与mysql基础教程
  • 购销合同违约罚款属什么科目
  • 月末结转营业税金及附加分录
  • 不良修复体的危害
  • 骑自行车的好处功效与作用
  • 奥维尔的瓦兹河岸
  • php储存数据的方法
  • 房开企业增值税扣除土地价款包括契税吗
  • 哪些税改将影响家庭个人财富
  • 如何用php制作网页
  • 其他综合收益与营业外收入的区别
  • css如何实现文字环绕
  • 长期借款业务会亏损吗
  • 折旧与摊销会计分录
  • scp命令 基于SSH协议远程复制文件
  • 个人个税汇算清缴怎么做
  • 汇算清缴退回来的钱会计分录怎么做
  • 员工辞退补偿金扣个税吗
  • php指定域名访问
  • echarts怎么引入
  • 现代服务包括哪些内容是什么
  • 缴纳残保金工资是实发工资还是应发工资
  • 赔偿给客户的产品交增值税吗
  • 调研费用包括哪些项目
  • 预收账款是负债增加还是减少
  • 房地产企业成本结转
  • 银行抵债资产如何更快处置
  • 跨月普票发票怎么红冲
  • 车船税没有发票可以入账吗
  • 长期股权投资如何确认
  • 银行承兑汇票向银行申请贴现会计分录
  • 凭证扣除 28号
  • 小企业如何建立党支部
  • 跨国企业在国外设立工厂的战略地位
  • 账簿的设置和登记要点
  • MySQL下载安装步骤详解
  • linux urb
  • Linux Kernel 4.5在3月15日发布最终版
  • mac照片内存清理
  • 如何避免升级为查帐征收
  • win7退出家庭组
  • 联想笔记本win7装win10
  • win7如何获取管理员密码
  • 激素六项雌二醇30
  • 一个项目引多个项目
  • shell脚本命令行参数
  • jQuery插件开发
  • shell忽略大小写
  • android 进程通信
  • 税控普通发票
  • 取消税控盘服务费
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设