查询及删除重复记录的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 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)
注:rowid为oracle自带不用该.....
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)
分享到:
相关推荐
使用Oracle查询并删除重复记录的SQL语句
查询及删除oracle重复记录的SQL语句
SQL语句查询所有的重复记录,删除所有的重复记录,查找指定的重复记录
最基本的四种SQL语句删除重复记录的方法
是一个简单的sql语句,你可以仿照这个语句查出表里的重复数据。
本文介绍了用四种方法教你如何用SQL语句删除重复记录。
删除重复记录 删除数据表中的重复记录,包括MySQL、SQL Server、Oracle等
该文档是本人在实验过程中遇到的一个需求,之后解决了,特此写一个文档,实现一条SQL语句删除数据库某一个表中重复的记录。(重复的记录只保留一条,其他的被删除)
(参考)查询和删除同一表内一个或多个字段重复记录的SQL语句.pdf
19、说明:删除重复记录 1),delete from tablename where id not in (select max(id) from tablename group by col1,col2,...) 2),select distinct * into temp from tablename delete from tablename insert into...
查询及删除重复记录的SQL语句,虽然有点乱,但内容还是不错的。
教你如何在SQL数据库后台通过SQL语句删除重复SQL记录。
主要介绍了SQL语句实现删除重复记录并只保留一条,本文直接给出实现代码,并给出多种查询重复记录的方法,需要的朋友可以参考下
常用的sql语句,删除重复记录,查询多余重复记录,将数据写入新表
5.5.3 修改视图的语句结构 5.5.4 重命名视图的名称 5.5.5 使用SQL语句修改视图 5.5.6 删除视图的语句结构 5.5.7 使用SQL语句删除视图 5.6 视图的应用 5.6.1 利用视图简化表的复杂连接 5.6.2 利用视图简化复杂查询 ...
几个工作中非常有用的工具sql语句 ...3、删除数据库的重复记录(所有字段数据都相同的才算重复,也可以自己定义重复标准 4、两张表结构基本相同,将B表中的相同ID的数据的某些属性更新到A表的相应属性中(oracle 版本)
19、说明:删除重复记录 Delete from tablename where id not in (select max(id) from tablename group by col1,col2,...) 20、说明:列出数据库里所有的表名 select name from sysobjects where type='U' 21、...
在几千条记录里,存在着些相同的记录,如何能用SQL语句,删除掉重复的呢; 1、查找表中多余的重复记录; 2、查找表中多余的重复记录; 3、删除表中多余的重复记录(多个字段)
比如创建、备份、删除数据库的SQL脚本,这些当然是比较简了,还有复杂点的像备份、创建索引、复合SQL语句、创建视图、高级运算查询、EXCEPT 运算符、INTERSECT 运算符、使用外连接、SQL分组、复制或拷贝表、在线视图...
以下就重复记录删除的问题作一... 如果该表需要删除重复的记录(重复记录保留1条),可以按以下方法删除 代码如下: select distinct * into #Tmp from tableName drop table tableName select * into tableName from