分段表rowid_表按ROWID切片
ata_object_id is not null) d
/
例如,输出10个ROWID切片,我们想要进行DELETE,UPDATE等等,只需要修改一下SQL,同时运行10个SQL即可。
'WHEREROWIDBETWEEN'''||SYS.DBMS_ROWID.ROWID_CREATE(1,D.OID,C.FID1,
------------------------------------------------------------------
where rowid between 'AAASSdAAEAAAAIIAAA' and 'AAASSdAAEAAAALqCcP';
where rowid between 'AAASSdAAEAAAALrAAA' and 'AAASSdAAEAAAANyCcP';
where rowid between 'AAASSdAAEAAAANzAAA' and 'AAASSdAAEAAAAPyCcP';
where rowid between 'AAASSdAAEAAAAPzAAA' and 'AAASSdAAEAAAARyCcP';
where rowid between 'AAASSdAAEAAAARzAAA' and 'AAASSdAAEAAAATyCcP';
where rowid between 'AAASSdAAEAAAATzAAA' and 'AAASSdAAEAAAAVyCcP';
where rowid between 'AAASSdAAEAAAAVzAAA' and 'AAASSdAAEAAAAXyCcP';
where rowid between 'AAASSdAAEAAAAXzAAA' and 'AAASSdAAEAAAAZyCcP';
where rowid between 'AAASSdAAEAAAAZzAAA' and 'AAASSdAAEAAAAbyCcP';
where rowid between 'AAASSdAAEAAAAbzAAA' and 'AAASSdAAEAAAAdlCcP';
10 rows selected.
上面脚本不能用于分区表,而且有时候我们需要delete,update的数据其实只占据表总行数的30%,利用上面脚本要做很多无用功
可以利用下面脚本
select count(*) total_rows from scott.test 带上where条件; ---求出要DELETE,UPDATE的总行数,然后运行下面SQL,输入总行数,ROWID分片数
select 'where rowid >= ''' || rid || ''' and rowid < ''' || lead(rid, 1,rid) over(order by rid) || ''';'
from (select rn, rid
from (select rownum rn, rowid rid, count(*) over() total_rows
from scott.test 带上where条件
order by rowid)
where rn in (select trunc(&&total_rows / level)
from dual
connect by level <= &&level
union
select 1 from dual));
结果类似如下:
'WHEREROWID>='''||RID||'''ANDROWID<'''||LEAD(RID,1,RID)OVER(ORDERBYRID
----------------------------------------------------------------------
where rowid >= 'AAASSdAAEAAAAILAAA' and rowid < 'AAASSdAAEAAAAJuAAB';
where rowid >= 'AAASSdAAEAAAAJuAAB' and rowid < 'AAASSdAAEAAAAJ5AAm';
where rowid >= 'AAASSdAAEAAAAJ5AAm' and rowid < 'AAASSdAAEAAAAKGAA2';
where rowid >= 'AAASSdAAEAAAAKGAA2' and rowid < 'AAASSdAAEAAAAMRAAU';
where rowid >= 'AAASSdAAEAAAAMRAAU' and rowid < 'AAASSdAAEAAAAMoAAq';
where rowid >= 'AAASSdAAEAAAAMoAAq' and rowid < 'AAASSdAAEAAAANKAAo';
where rowid >= 'AAASSdAAEAAAANKAAo' and rowid < 'AAASSdAAEAAAAOCAAb';
where rowid >= 'AAASSdAAEAAAAOCAAb' and rowid < 'AAASSdAAEAAAAPbAAS';
where rowid >= 'AAASSdAAEAAAAPbAAS' and rowid < 'AAASSdAAEAAAASOAA6';
where rowid >= 'AAASSdAAEAAAASOAA6' and rowid < 'AAASSdAAEAAAAaiAAE';
where rowid >= 'AAASSdAAEAAAAaiAAE' and rowid < 'AAASSdAAEAAAAaiAAE'; ----最后一个ROWID 需要改一下,把<改写为<=
11 rows selected.
然后自己带入条件,在多个SESSION运
分段表rowid_表按ROWID切片相关推荐
- 分段表rowid_Oracle表的Rowid字段
Rowid 字段类型: Rowid 是一行数据的一个唯一标识. ROWID 是数据的详细地址,通过 rowid,oracle 可以快速的定位某行具体的数据的位置. ROWID 可以分为物理 rowid ...
- ORACLE 大表使用 rowid 切片备份到历史表
ORACLE 大表使用 rowid 切片备份到历史表 概述与要求 思路 备份与清理表的信息 方案 操作前准备 切分字段 备份步骤 清理步骤 脚本 概述与要求 项目需求将几个5000万行大表先备份到历史 ...
- java rowid_什么是rowid?
点击标题下「蓝色微信名」可快速关注 预计阅读时间:6分钟 上周员工培训,介绍索引的时候,提到了rowid的概念,没有展开来说,这儿我们再来介绍下. 在Oracle中,每张表会有一个伪列,叫做rowid ...
- excel切片器_excel:在透视表中使用切片器高效筛选,升职加薪系列
我们平时经常使用到excel的筛选,但excel自带的筛选功能并不直观,因为筛选的条件在筛选完成后自动隐藏了起来.如何在筛选完成后,还能直观地看到筛选条件呢,今天来介绍一下excel中切片器的使用,首 ...
- bos 获取数据库连接_EAS-BOS表头-分录多表开发高级教程
EAS-BOS表头-分录多表开发高级教程 准备工作:新建包,子系统简码(必录) 1.实体层 新建实体:"父实体对象"选择框架的一个基类(必须) 单据头Student: 选择基类: ...
- oracle由rowid查找表,Oracle ROWID与RDBA
Oracle ROWID与RDBA 1.1 Rowid的意义 1. Rowid就是用来标记表中每一行的行地址的,分为逻辑rowid,物理rowid和外部rowid,一般索引组织表的行 ...
- spool命令、创建一个表,创建并且copy表,查看别的用户下的表,rowid行地址 索引的时候使用,表的增删改查,删除表,oracle的回收站
1.spool 命令 spool "D:\test.txt" spool off SQL> host cls 2.创建一个表 SQL> --条件(1):有创 ...
- oracle rowID切片,Oracle中的rowid
ROWID是ORACLE中的一个重要的概念.用于定位数据库中一条记录的一个相对唯一地址值.通常情况下,该值在该行数据插入到数据库表时即被确定且唯一.ROWID它是一个伪列,它并不实际存在于表中.它是O ...
- spool命令、创建一个表,创建而且copy表,查看别的用户下的表,rowid行地址 索引的时候使用,表的增删改查,删除表,oracle的回收站...
1.spool命令 spool "D:\test.txt" spool off SQL> host cls 2.创建一个表 SQL> --条件(1):有创建 ...
最新文章
- JavaScript 中实现 sleep
- 缺省参数-缺省参数的注意事项
- 惠新宸php教程_惠新宸:首位国人加入PHP语言官方开发组
- Qt文档阅读笔记-QWebEngineView及QML WebEngineView
- 纯文字海报如何排版更引人注目?
- matlab矩阵0-1归化,数据标准化归化处理.doc
- php两个编辑框一个提交按钮,一个表单中的两个提交按钮
- 硬盘故障时如何强制关机:Input/output error
- [NAACL16]RNN文法
- [R语言绘图]气泡图symbols
- oracle添加男女约束,Oracle如何给数据库添加约束过程解析
- python安装math库_Python-math库
- STRUTS1框架简介
- json.loads()的字符串中为单引号引发的错误
- 多个无线WIFI路由器之间实现不掉线无缝切换的设置方法
- 格创东智品牌形象升级,新Logo尽显创新活力
- 【收藏】亲测奥维互动地图如何导入2023谷歌地图
- 读书笔记 - 《卧底经济学》
- 恭贺新春-杨建荣敬祝
- 嵌入式软件工程师面试题及答案