通过SQL语句删除重复记录
最近在项目里碰到很多重复记录的事情,因为是设计业务里的具体数值,所以不敢轻易全部删除,数据量也很大,所以就倒腾了点代码在SQL里进行删除
纯属菜鸟,还望高手指教啊
1 --创建临时表 2 3 ifexists (select*from tempdb.dbo.sysobjects where id=object_id( 'tempdb.dbo.##TEMP')) 4 droptable ##TEMP 5 6 --将有重复记录的数据导入到临时表里,并增添一个字增列 7 selectIDENTITY(int,1,1) as ppkey,ParameterRelatedId,BusinessParameterID into ##Tempfrom ParameterRelated
where RegionID='7E01D028-F84A-4D9A-9428-F68989215C0B'and YearTime=2011
and BusinessParameterID in (select BusinessParameterID from BusinessParameters) 8 9 --分组后根据自增列的大小取出重复记录的第一个记录ID 10 select*from ##Tempwhere ppkey in (selectMin(ppkey) from ##Tempgroupby BusinessParameterID)11 12 --根据取出来的记录ID过滤,删除掉那些重复记录自增列不是最小的记录13 deletefrom ParameterRelated where ParameterRelatedId
notin(select ParameterRelatedId from ##Tempwhere ppkey in
(selectMin(ppkey) from ##Tempgroupby BusinessParameterID))
and RegionID='7E01D028-F84A-4D9A-9428-F68989215C0B'and YearTime=2011
转载于:https://www.cnblogs.com/MrWby/archive/2011/09/14/2176042.html
通过SQL语句删除重复记录相关推荐
- SQL语句删除重复记录
转:http://www.cnblogs.com/sunxiaonan/archive/2009/11/24/1609439.html 转:http://www.cnblogs.com/liaoyun ...
- mysql用一条sql语句删除重复记录_mysql中删除重复记录,并保留重复数据中的一条数据的SQL语句...
正好想写一条删除重复语句并保留一条数据的SQL,网上查了一部分资料写的很详细,但还是在这里写下自己的理解,以遍后续学习 .如下: 表字段和数据: SQL语句: DELETE FROM`user`WHE ...
- SQL语句删除重复记录且只保留一条有效记录
1.查找表中多余的重复记录,重复记录是根据单个字段(name)来判断 select * from lib where name in (select name from lib group by na ...
- 通过SQL 语句删除重复记录并且只保留一条记录
这里写自定义目录标题 1 重复字段 2 查询全部重复的数据 3 删除全部重复试题 4 查询表中多余重复试题(根据 depno 来判断,除了 rowid 最小的一个) 4.1 第一种方法 4.2 第二种 ...
- 利用sql语句删除重复数据
记录原因: 昨天遇到一个问题:需要写一个sql语句删除重复数据.当时解决的办法,是先查询出重复的数据id,然后再单独写删除语句进行删除.今天想了想应该还是有其他办法解决的,研究了下可以通过一条语句就能 ...
- 在SQL中删除重复记录(多种方法) [转]
学习sql有一段时间了,发现在我建了一个用来测试的表(没有建索引)中出现了许多的重复记录.后来总结了一些删除重复记录的方法,在Oracle中,可以通过唯一rowid实现删除重复记录:还可以建临时表来实 ...
- SQL Server 删除重复记录,只保留一条记录
原文地址:http://blog.csdn.net/eriato/article/details/17417303 有张表格之前没有设计关键字段的唯一约束,导致有时候执行插入操作时不小心执行了多次就出 ...
- oracle sql删除重复,【转帖】SQL Oracle删除重复记录
1.Oracle删除重复记录. 删除表中多余的重复记录,重复记录是根据单个字段(peopleId)来判断,只留有rowid最小的记录. delete from people where peopleI ...
- SQL exists 删除重复记录
从表中删除重复记录,保留ID最大值的一条,以及无重复的记录 delete from T where exists ( select 1 from T b where T .fDGUID=b.fDGU ...
最新文章
- avalov+require实现tab栏
- hana修改字段_自定义SAP HANA登陆界面背景
- vb.net2019-多线程并行计算(6)
- c语言subscripted_c语言。数组的问题。急!
- MyBatis接口代理
- c#学习-base和this在构造函数中的应用
- word文档生成目录
- Java 学习之集合类(Collections)
- HNOI2019:My Dream
- Python2.7版本的pip下载安装(win7 64位,Python2.7)
- 小米笔记本linux指纹,小米笔记本Air13.3寸指纹版(128GB) u盘装系统win10步骤
- Flex弹性布局详细介绍
- 日本剑道规则及道场礼节 ——值得学习
- 有财学院http://www.godgold.com/learn/title_asp/index.html
- hive 元数据 解释
- pdps安装oracle12安装,Tecnomatix PDPS安装教程适用于Oracle版本11g
- 华为怎么显示返回按键_苹果手机为何一直没有“返回键”?其实乔布斯生前就说出了答案!...
- 在matlab中生成m序列
- Java 中XO 的概念
- 将Java程序转换为Windows服务 作者:IT168 seasky 2007-09-19