常见的执行计划步骤

1.表访问路径:

TABLE ACCESS FULL 知名的全表扫描。它会读出表中的每一条记录(严格的说,读取表高水位线以内的每个数据块)

CLUSTER 通过索引簇的键来访问数据

HASH 通过散列键来访问表中的匹配特定的散列值得一条或多条记录

BY INDEX ROWID 通过指定的ROWID来访问表中的单条记录。ROWID是访问单条记录的最快捷的方式。通常,ROWID的信息都是由一个相关的索引检索而来的

BY USER ROWID 通过一个绑定变量,字面变量或where current of cursor 子句来通过rowid进行访问

BY GLOBAL INDEX ROWID 通过全局分区索引来获得rowid进行访问

BY LOCAL INDEX ROWID 通过本地分区索引来获得的ROWID进行访问

SAMPLE 使用sample子句得到结果集的一个经过采集的子集

external table 访问一张外部表

RESULT CACHE 这个SQL结果集可能来自结果集缓存

MAT_VIEW SQL语句被重写以利用物化视图

索引操作

ADN EQUAL 合并来自一个或多个索引扫描的结果集

INDEX UNIQUE SCAN 只返回一条记录的地址的索引检索

RANGE SCAN 返回多条记录的ROWID的索引检索。之所以可以这样返回,是因为索引的是非唯一索引或者使用了区间操作符(例如:>)

FULL SCAN 按照索引建的顺序扫描整个索引

SKIP SCAN    按照索引键中非前导列的索引扫描。

FULL SCAN(MAX/MIN) 检索最高或者最低的索引条目

FAST FULL SCAN 按照块顺序扫描索引的每个条目,可能会使用多块读取

DOMAIN INDEX 域索引检索(用户定义的索引类型)检索

位图操作

CONVERSION 将ROWID转换成位图或者将位图转换成ROWID

INDEX 从位图中提取一个值或者一个范围的值

MERGE 合并多个位图

MINUS 从一个位图中减去另一位图

OR 按位(BIT_WISE)对两个位图做OR操作

表连接操作

CONNECT BY 对前一步骤的输出结果执行一个层次化的自联结操作

MERGE JOIN 对前一个步骤的输出结果执行一次合并联结

NESTED LOOPS 对前一个步骤执行嵌套循环联结。对上层的结果集中的每一行,都会扫描下层的的结果集以找到匹配的记录。

HASH JOIN 对两个记录源(ROW SOURCE)进行散列联结

分区操作

SINGLE 访问单个分区

ITERATOR 访问多个分区

ALL 访问所有分区

INLIST 基于IN列表中的值来访问多个分区



  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值