ORACLE删除重复数据的一种高效的方法(转)
来源:互联网 发布:小站tpo mac下载 编辑:程序博客网 时间:2024/05/15 23:49
删除重复数据的一种高效的方法
表demo是重复拷贝自dba_objects,有88万左右,不重复的是27323,没有索引
方法一:delete from demo a where a.rowid <> (select max(rowid) from demo b where
b.object_id=a.object_id);
耗时:几个小时以上
方法二: delete from demo where rowid in
(select rid from
(select rowid rid,row_number() over(partition by object_id order by rowid) rn
from demo)
where rn <> 1 );
耗时:30秒
方法三: create table demo2 as
select object_id,owner... from
(select demo.*,row_number() over(partition by object_id order by rowid) rn from demo)
where rn = 1;
truncate table demo; insert into demo select * from demo2; drop table demo2;
共耗时: 10秒,适合大数据量的情况,产生更少回滚量;
表demo是重复拷贝自dba_objects,有88万左右,不重复的是27323,没有索引
方法一:delete from demo a where a.rowid <> (select max(rowid) from demo b where
b.object_id=a.object_id);
耗时:几个小时以上
方法二: delete from demo where rowid in
(select rid from
(select rowid rid,row_number() over(partition by object_id order by rowid) rn
from demo)
where rn <> 1 );
耗时:30秒
方法三: create table demo2 as
select object_id,owner... from
(select demo.*,row_number() over(partition by object_id order by rowid) rn from demo)
where rn = 1;
truncate table demo; insert into demo select * from demo2; drop table demo2;
共耗时: 10秒,适合大数据量的情况,产生更少回滚量;
- ORACLE删除重复数据的一种高效的方法
- ORACLE删除重复数据的一种高效的方法(转)
- 删除重复数据的一种高效的方法
- 删除重复数据的一种高效的方法
- 高效删除Oracle数据库中重复数据的方法
- 高效删除Oracle数据库中重复数据的方法
- 高效删除Oracle中重复数据的方法
- 高效删除Oracle数据库中重复数据的方法
- 高效删除Oracle中重复数据的方法
- 高效删除Oracle中重复数据的方法
- 高效删除Oracle中重复数据的方法
- 高效删除Oracle数据库中重复数据的方法
- 高效删除Oracle数据库中重复数据的方法 .
- Oracle删除重复记录oracle 删除重复记录的高效方法 && mysql 删除重复记录方法
- SQL删除重复数据的一种方法(亲测)
- 高效删除Oracle数据库中重复数据,并保留最新一条的方法
- 高效删除Oracle数据库中重复数据,并保留最新一条的方法
- 最高效的删除ORACLE中重复纪录的方法
- ABAP OO的八大理由(二)
- WMICodeCreator
- CListCtrl和CImageList 的使用
- 比尔·盖茨:永远别向复杂低头
- 点击用户帐户时,弹出”automation 服务器不能创建对象“的解决方法
- ORACLE删除重复数据的一种高效的方法(转)
- 建模、数据结构、算法?
- oracle 10g 体系结构
- 分布式的Flex开发
- Windows SDK入门浅谈 — 写给初学者
- 从SOCKADDR_STORAGE结构中取IP地址和端口
- WTL文档
- 自动匹配输入框
- KMP算法中next和nextval数组的计算方法