位置: 编程技术 - 正文

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中删除触发器用)

  • 财务软件回收
  • 如何查询增值税申报表
  • 买赠怎么做会计分录
  • 工资出现负数怎么申报个税
  • 印花税是当月交当月的吗
  • 报税时提示缺少相关组件怎么解决
  • 增值税期初应补税额计算
  • 合并报表负商誉为什么计留存收益
  • 已过期增值税专票怎么开
  • 账簿登记的基本要求
  • 公司买入股票要交所得税吗?
  • 增值税与普通发票的关系
  • 公司取出的备用金怎么打税
  • 购置股权账务处理流程
  • 税控盘开票显示操作未授权
  • 公司间借款计入什么科目
  • 人力资源外包服务收费标准
  • 1697509099
  • 化妆品的消费税率多少
  • 纳税评估调整
  • mac u盘
  • 汇算清缴当年分配的股息红利
  • 个税抵扣申报截止时间
  • win11打开软件出现????????
  • php sybase_fetch_array使用方法
  • 资产减值损失的借贷方向
  • 抵债资产账务处理程序
  • gba是什么文件
  • uni-app list
  • zend framework手册
  • php curl_init
  • ai 绘画原理
  • speedtest教程
  • update-initramfs -u命令
  • mysqld_safe mysqld from pid
  • 外购存货的成本包括哪些内容
  • 公司买东西了怎么做账
  • 公司一季度报表
  • 长期挂账的"其他应收款"该怎么处置
  • 弥补亏损的会计分录
  • mongodb aggregate 性能
  • python转换数字
  • 一个人失恋了该怎么安慰她
  • 累计折旧在资产负债表中填在哪里
  • 出口退税中的免税是什么
  • 进项大于销项的会计分录怎么做?
  • 申报企业所得税会计分录怎么写
  • 建筑劳务如何开劳务发票
  • 公司租赁房屋房产税
  • 库存商品过期了还能用吗
  • 设备租赁公司怎么样
  • 将购进的材料用于自制生产用设备
  • 还银行贷款如何计算利息
  • 运费险三件衣服分3个快递寄出
  • 出售其他权益工具投资其他综合收益
  • 支付保证金如何做账务处理
  • 如何抵扣不动产增值税
  • 厂房和设备折旧计入什么费用
  • 房产公司销售成本怎么算
  • 外汇账户开立成功后,开户行应于
  • mysql多字段排序原理
  • 存储过程失效怎么办
  • centos rpm包存放位置
  • 关于月亮的诗句
  • Ubuntu下MySQL中文乱码的问题解决
  • 华硕笔记本预装win11改win10
  • bios单词
  • linux没有ssh
  • centos必学的60个命令
  • win7 64位系统QQ自动退出重新登录提示您已登录不能重复登录的解决方法
  • win10地图不显示
  • 华为nova7耳机怎么戴
  • bootstrap表单模板
  • javaweb技术栈是什么
  • javascript事件模型介绍
  • jquery 入门
  • 关于jQuery中的DOM操作,下列哪种方法用来复制元素?
  • javascript常用类型
  • 怎么查询中标公司
  • 预缴增值税申报表申报期限
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

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

    友情链接: 武汉网站建设