--方法1:rowid

--显示重复的行 select * from persons p1 where rowid<> (select max(rowid) from persons p2 where p1.pid=p2.pid);

说明:

如果,有多个字段相同,则添加即可,如: select * from persons p1 where rowid<> (select max(rowid) from persons p2 where p1.pid=p2.pid and p1.pname=p2.pname);

--删除重复的行 delete from persons p1 where rowid<> (select max(rowid) from persons p2 where p1.pid=p2.pid);

总结:

A:每张表的记录可能相同,但是每张表的记录的ROWID是唯一的;

B:做题思路

a:显示相同字段的最大ROWID       b:留下相同字段的最大ROWID所在的记录,其它的记录删除;

--方法二:group by

按照PID分组,显示pid数量大于1的记录

select pid from persons group by pid having count(pid)>1;

删除重复行

delete from persons where pid in (select pid from persons group by pid having count(pid)>1);

此方法将删除有重复记录的所有行,不会留下一条刻录;

--方法三:distinct

取消重复行 select distinct * from persons;

建表并复制“取消重复行的表中的数据” create table table_new as select distinct * from persons;

删除persons表中数据 delete from persons;

把table_new表中没有重复行的数据插入到到persons表中 insert into persons select * from table_new;

总结:

使用中间表导入导出数据来删除重复行;

Oracle删除重复记录三种方法相关推荐

  1. ORACLE查询删除重复记录三种方法

    比如现在有一人员表 (表名:peosons) 若想将姓名.身份证号.住址这三个字段完全相同的记录查询出来 复制代码代码如下: select p1.*    from persons  p1,perso ...

  2. Oracle删除数据的三种方式

    Oracle删除数据的三种方法 删除表(记录和结构)的语句delete--truncate--drop drop命令 drop table 表名: 例如:删除学生表(student) drop tab ...

  3. mysql删除重复记录语句的方法 作者: 字体:[增加 减小] 类型:转载 时间:2010-06-21 我要评论 查询及删除重复记录的SQL语句,虽然有点乱,但内容还是不错的。 . .

    mysql删除重复记录语句的方法 作者: 字体:[增加 减小] 类型:转载 时间:2010-06-21 我要评论 查询及删除重复记录的SQL语句,虽然有点乱,但内容还是不错的. 例如: id name ...

  4. oracle sql删除重复,【转帖】SQL Oracle删除重复记录

    1.Oracle删除重复记录. 删除表中多余的重复记录,重复记录是根据单个字段(peopleId)来判断,只留有rowid最小的记录. delete from people where peopleI ...

  5. java list 合并 重复的数据_Java ArrayList合并并删除重复数据3种方法

    首页 > 基础教程 > 集合框架 > ArrayList类 Java ArrayList合并并删除重复数据3种方法 1. 通过List自带方法list.retainAll() Lis ...

  6. Oracle新建数据库的三种方法

    Oracle新建数据库的三种方法 1.通过运行Oracle Database Configuration Assistant 创建.配置.或删除数据库(也可在命令行下输入dbca): 2.用命令行的方 ...

  7. sql oracle分页查询,【SQL】Oracle分页查询的三种方法-Oracle

    [SQL]Oracle分页查询的三种方法 采用伪列 rownum 查询前10条记录 [sql] select * from t_user t where ROWNUM <10; 按照学生ID排名 ...

  8. Oracle数据库备份与恢复的三种方法

    Oracle数据库备份与恢复的三种方法 Oracle数据库有三种标准的备份方法,它们分别是导出/导入(EXP/IMP).热备份和冷备份.导出备件是一种逻辑备份,冷备份和热备份是物理备份. 一. 导出/ ...

  9. oracle 删除重复记录

    比如现在有一人员表 (表名:peosons) 若想将姓名.身份证号.住址这三个字段完全相同的记录查询出来 select p1.*   from persons  p1,persons  p2   wh ...

  10. mysql删除重复记录语句的方法

    例如: id name value 1 a pp 2 a pp 3 b iii 4 b pp 5 b pp 6 c pp 7 c pp 8 c iii id是主键 要求得到这样的结果 id name ...

最新文章

  1. 【规范】前端编码规范——jquery 规范
  2. mongodb 学习笔记 2 --- 修改器
  3. 什么软件测试显示器响应时间准,自己动手测试液晶显示器响应时间
  4. 【华为云技术分享】Nginx应用调优案例
  5. 如何清空_回收站删除的文件怎么恢复?回收站清空如何恢复?
  6. 软件定义无线电的实时频谱分析仪相关原理介绍(二)——射频,中频和基带信号
  7. 移动支付这回真的逆天了!什么才是真正的资本运作?让微信春晚来告诉你!...
  8. 戴尔台式计算机主板型号,戴尔台式机主板型号_昨天拿戴尔台式电脑去修说主板坏了,今天去拿的。结果说主板拆不下。_戴尔台式机主板...
  9. (十四)商品详情页实现
  10. 项目工作绩效数据、项目工作绩效信息、项目工作绩效报告
  11. 服务器主板最多支持内存频率,b360主板支持内存频率多少
  12. uniapp对接腾讯即时通讯TIM 发图片消息问题
  13. python urllib之parse中urlencode、quote、unquote使用方法
  14. 9.3.2 自然连接(NATURAL JOIN)
  15. 安卓股票悬浮窗_Android 实现悬浮窗功能
  16. (c语言)兔子繁衍问题
  17. cf3月14服务器维护,CF3月14在线活动背后的真相详情
  18. 浏览器中的主页图标不见了
  19. ddd linux 调试工具_Centos安装DDD调试器
  20. java斜椭圆_斜椭圆外接正矩形计算方法

热门文章

  1. D - 昂贵的聘礼(最短路径)
  2. 单源最短路(SPFA算法)
  3. 计算机语言有哪些面向对象,面向对象的几个概念
  4. python 获取文件大小_Python解决女朋友看电影没字幕的需求
  5. 全国加油站分布数据/停车场分布/公园分布/景区分布/保护区分布/2020年poi感兴趣点
  6. SLAM学习笔记-------------(11)回环检测
  7. linux 更新目录时间戳,修改linux 文件的时间戳
  8. 计算机一直在启动修复怎么关机,电脑开机总是要启动修复修复后重启还要修复怎么处理方法...
  9. 用户使用双屏扩展桌面类软件时,所遇到的主要疑难问题汇编
  10. Spring Cloud Gateway替代zuul作为API网关(一)