首页 | 资讯动态 | linux基础 | 系统管理 | 网络管理 | 编程开发 | linux数据库 | 服务器技术 | linux相关 | linux认证 | 嵌入式 | 下载中心 | 专题 | linux招聘 | HR | 镜像
OKLinux中文技术站
·设为首页
·加入收藏
·联系我们
系统管理: 中文环境 系统管理 桌面应用 内核技术 | Linux基础: 基础入门 安装配置 常用命令 经验技巧 软件应用 | Linux数据库: Mysql Postgre Oracle DB2 Sybase other
网络管理: 网络安全 网络应用 Linux服务器 环境配置 黑客安全 | 编程开发: PHP CC++ Python Perl Shell 嵌入式开发 java jsp | PHP技术: PHP基础 PHP技巧 PHP应用 PHP文摘
搜索中心 Linux招聘 Linux专题 Apache | Linux相关: 硬件相关 Linux解决方案 Linux认证 企业应用 其它Unix | 相关下载: 资料下载 参考手册 开发工具 服务器类 软路由 其它
 技术搜索:
会员中心 注册会员 高级搜索  
  → 当前位置:首页>linux数据库>其他>正文

Oracle 如何快速查找和删除重复记录

http://www.oklinux.cn  2009-11-27  hi.baidu.com/lisen8661    会员收藏  游客收藏  【 】 
您查看的文章来源于http://www.oklinux.cn

今天整理用户系统的人员库,发现有很多人员有重复,需要删除掉这些冗余的人员信息;在网上查了一下,基本上有两种解决办法:

在Oracle中,每一条记录都有一个rowid,rowid在整个数据库中是唯一的,rowid确定了每条记录是在Oracle中的哪一个数据文件、块、行上;

在重复的记录中,可能所有列的内容都相同,但rowid不会相同,所以只要确定出重复记录中那些具有最大rowid的就可以了,其余全部删除。

如果检索出这些重复的记录:

1。select gh,xm from t_rygl_ryxx group by gh,xm having count(*) >1

这条语句可以找出重复记录中所有不重复的记录(呵呵,说起来真别扭)

2。select * from t_rygl_ryxx e1 where rowid not in (select max(rowid) from t_rygl_ryxx e2 where e1.gh=e2.gh)

这条语句可以找出所以重复的记录(包括重复记录中有重复的)。

以上两条语句,第条个语句执行效率非常高;第二条语句执行起来效率就相对慢了很多,但第二条记录很精确,查出来的记录可以直接导出到Excel,可以好好对比一下。我再这里不多说,你可以自己试试,琢磨琢磨。。。

如果找到了不重复的记录,那删除就很简单了,在这里就不多说了。。。

希望可以帮助遇到此类问题的朋友,也希望大家能多留言交流。


上一篇:Chrome OS可以自动更新   下一篇:出现mysql max-connections问题解决

收藏于收藏夹】 【评论】 【推荐】 【打印】 【关闭
相关文档
·出现mysql max-connections问题解决
·在Linux下定时备份MySQL
·Oracle Dataguard备库失败与主库响应测试
·Oracle简单stream一个用户单向复制配置
·Oracle数据库实例两则
·Oracle小知识集锦
·2009 MySQL数据库学习者盛会
·深入解析Oracle参数及参数文件
·查看修改Oracle10G归档日志空间的限制
·Linux环境下给MySQL数据库文件打包流程记录
·MySQL 5.1.41释出
·Ubuntu 9.10 修改 MySQL 的 datadir
·在MySQL中修改表名的SQL语句
·Eclipse连接Oracle数据库的ORA-00604 ORA-12705错误
·MySQL知识学习之my.ini详解
·用NHibernate调用Oracle的存储过程
发表评论
密码: 匿名评论
评论内容:

(不超过250字,需审核后才会公布,请自觉遵守互联网相关政策法规)
 
  最新文档
·Oracle数据库实例两则
·在Linux下定时备份MySQL
·出现mysql max-connections问题解决
·Oracle Dataguard备库失败与主库响应测
·Oracle简单stream一个用户单向复制配置
·Oracle小知识集锦
·2009 MySQL数据库学习者盛会
·深入解析Oracle参数及参数文件
·查看修改Oracle10G归档日志空间的限制
·Linux环境下给MySQL数据库文件打包流程
·MySQL 5.1.41释出
·Ubuntu 9.10 修改 MySQL 的 datadir
  阅读排行
·Linux下安装Oracle数据库完整笔记
·MySQL导入导出.sql文件步骤
·Oracle建表过程初学
·Oracle 建立临时表语法及使用技巧
·Oracle面试题及答案整理
·Linux系统下启动MySQL的命令及相关知识
·Oracle10g RAC for Linux配置全过程
·MySQL中文乱码解决方案集锦
·Linux平台下配置MySQL主从复制
·手工配置Oracle 10G Enterprise Manage
·Linux平台下启动oracle 11g EM控制台
·RHEL5.1 下安装Oracle 10.2.0.1及常见
·Mysql JDBC驱动版本与Mysql版本的对应
·Oracle数据库里查看表空间使用状况
·Linux下安装Oracle客户端
网摘收藏: