oracle删除重复数据保留第一条记录


本文摘自PHP中文网,作者angryTom,侵删。

oracle删除重复数据保留第一条记录

1、查找表中多余的重复记录,重复记录是根据单个字段(Id)来判断

1

select * from 表 where Id in (select Id from 表 group byId having count(Id) > 1)

2、删除表中多余的重复记录,重复记录是根据单个字段(Id)来判断,只留有rowid最小的记录

1

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、查找表中多余的重复记录(多个字段)

1

select * from 表 a where (a.Id,a.seq) in(select Id,seq from 表 group by Id,seq having count(*) > 1)

4、删除表中多余的重复记录(多个字段),只留有rowid最小的记录

1

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)

5、查找表中多余的重复记录(多个字段),不包含rowid最小的记录

1

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)

PHP中文网,有大量免费的SQL教程,欢迎大家学习!

以上就是oracle删除重复数据保留第一条记录的详细内容,更多请关注木庄网络博客其它文章!

相关阅读 >>

oracle忘记用户名和密码怎么办?

oracle如何删除视图?

oracle的数据字典技术简析

oracle 11g 安装配置图文教程

oracle如何删除表数据

oracle安装闪退怎么办

oracle数据库怎么打开

oracle 存储过程详细介绍(创建,删除存储过程,参数传递等)

oracle如何创建自增长主键

游标的作用及属性介绍

更多相关阅读请进入《oracle》频道 >>


数据库系统概念 第6版
书籍

数据库系统概念 第6版

机械工业出版社

本书主要讲述了数据模型、基于对象的数据库和XML、数据存储和查询、事务管理、体系结构等方面的内容。



打赏

取消

感谢您的支持,我会继续努力的!

扫码支持
扫码打赏,您说多少就多少

打开支付宝扫一扫,即可进行扫码打赏哦

分享从这里开始,精彩与您同在

评论

管理员已关闭评论功能...