Oracle 删除重复数据只留一条
来源:互联网 发布:uml数据库建模 编辑:程序博客网 时间:2024/05/01 21:02
查询及删除重复记录的SQL语句
1、查找表中多余的重复记录,重复记录是根据单个字段(Id)来判断
select * from 表 where Id in (select Id from 表 group byId having count(Id) > 1)
2、删除表中多余的重复记录,重复记录是根据单个字段(Id)来判断,只留有rowid最小的记录
DELETE from 表 WHERE (id) IN ( SELECT id FROM 表 GROUP BY id HAVING COUNT(id) > 1) AND ROWID NOT IN (SELECT MIN(ROWID) FROM 表 GROUP BY id HAVING COUNT(*) > 1);
3、查找表中多余的重复记录(多个字段)
select * from 表 a where (a.Id,a.seq) in(select Id,seq from 表 group by Id,seq having count(*) > 1)
4、删除表中多余的重复记录(多个字段),只留有rowid最小的记录
delete from 表 a where (a.Id,a.seq) in (select Id,seq from 表 group by Id,seq having count(*) > 1)and rowid not in (select min(rowid) from 表 group by Id,seq having count(*)>1)
这条绿色标识的sql的意思是说要保留其中重复中的一条数据,如果去掉绿色sql会把所有重复的单子给删掉的。
5、查找表中多余的重复记录(多个字段),不包含rowid最小的记录
select * from 表 a where (a.Id,a.seq) in (select Id,seq from 表 group by Id,seq having count(*) > 1) and rowid not in (select min(rowid) from 表 group by Id,seq having count(*)>1)
0 0
- Oracle 删除重复数据只留一条
- Oracle 删除重复数据只留一条
- Oracle 删除重复数据只留一条
- Oracle 删除重复数据只留一条
- Oracle 删除重复数据只留一条
- Oracle 删除重复数据只留一条
- Oracle 删除重复数据只留一条
- Oracle 删除重复数据只留一条
- Oracle 删除重复数据只留一条
- Oracle 删除重复数据只留一条
- Oracle 删除重复数据只留一条
- Oracle 删除重复数据只留一条
- Oracle 删除重复数据只留一条
- Oracle 删除重复数据只留一条
- Oracle 删除重复数据只留一条
- Oracle 删除重复数据只留一条
- Oracle 删除重复数据只留一条
- Oracle 删除重复数据只留一条
- 多线程
- map内部的输出方式
- 第二周项目3-体验复杂度(2)汉诺塔
- 多数组K大数
- JAVA程序签发数字证书
- Oracle 删除重复数据只留一条
- 归并排序详解
- Android 开发艺术探索笔记 前四章
- 远程访问jupyter notebook
- 模重复平方计算法
- Web Service 是什么
- 多线程面试
- LEETCODE 137.Singel Number ii
- 如何用JAVA代码签发数字证书