/*+ USE_CONCAT */ 的用法
发布日期:2021-09-16 04:38:26
浏览次数:61
分类:技术文章
本文共 3121 字,大约阅读时间需要 10 分钟。
数据库版本11g
select * From emp where ename='SMITH' or empno=7902SQL> select * from table(dbms_xplan.display_cursor('5gj2f75x9xtnx')); PLAN_TABLE_OUTPUT--------------------------------------------------------------------------------SQL_ID 5gj2f75x9xtnx, child number 0-------------------------------------select * From emp where ename='SMITH' or empno=7902Plan hash value: 962431618--------------------------------------------------------------------------------| Id | Operation | Name | Rows | Bytes | Cost--------------------------------------------------------------------------------| 0 | SELECT STATEMENT | | | | 8| 1 | TABLE ACCESS BY INDEX ROWID | EMP | 2 | 78 | 8| 2 | BITMAP CONVERSION TO ROWIDS | | | || 3 | BITMAP OR | | | || 4 | BITMAP CONVERSION FROM ROWIDS| | | ||* 5 | INDEX RANGE SCAN | I_EMP | | | 1| 6 | BITMAP CONVERSION FROM ROWIDS| | | ||* 7 | INDEX RANGE SCAN | SYS_C00182518 | | | 0--------------------------------------------------------------------------------Predicate Information (identified by operation id): PLAN_TABLE_OUTPUT----------------------------------------------------------------------------------------------------------------------------------- 5 - access("ENAME"='SMITH') 7 - access("EMPNO"=7902) select /*+ USE_CONCAT */* From emp where ename='SMITH' or empno=7902SQL> select * from table(dbms_xplan.display_cursor('61agkrn33a0z1')); PLAN_TABLE_OUTPUT--------------------------------------------------------------------------------SQL_ID 61agkrn33a0z1, child number 0-------------------------------------select /*+ USE_CONCAT */* From emp where ename='SMITH' or empno=7902Plan hash value: 3488550714--------------------------------------------------------------------------------| Id | Operation | Name | Rows | Bytes | Cost (%CP--------------------------------------------------------------------------------| 0 | SELECT STATEMENT | | | | 3 (10| 1 | CONCATENATION | | | || 2 | TABLE ACCESS BY INDEX ROWID| EMP | 1 | 39 | 1 (|* 3 | INDEX UNIQUE SCAN | SYS_C00182518 | 1 | | 0 (|* 4 | TABLE ACCESS BY INDEX ROWID| EMP | 1 | 39 | 2 (|* 5 | INDEX RANGE SCAN | I_EMP | 1 | | 1 (--------------------------------------------------------------------------------Predicate Information (identified by operation id):--------------------------------------------------- PLAN_TABLE_OUTPUT-------------------------------------------------------------------------------- 3 - access("EMPNO"=7902) 4 - filter(LNNVL("EMPNO"=7902)) 5 - access("ENAME"='SMITH') 24 rows selected对查询中的WHERE后面的OR条件进行转换为UNION ALL的组合查询.
转载地址:https://blog.csdn.net/wll_1017/article/details/46423451 如侵犯您的版权,请留言回复原文章的地址,我们会给您删除此文章,给您带来不便请您谅解!
发表评论
最新留言
网站不错 人气很旺了 加油
[***.192.178.218]2024年03月31日 04时15分18秒
关于作者
喝酒易醉,品茶养心,人生如梦,品茶悟道,何以解忧?唯有杜康!
-- 愿君每日到此一游!
推荐文章
gcc和arm-linux-gcc 头文件寻找路径【转】 - 小菜庞
2019-04-26
五十五 毕业前的狂欢
2019-04-26
Android 如何编译ICU资源
2019-04-26
如何判断复杂语言引擎支持情况
2019-04-26
Android Text Layout 框架
2019-04-26
Android 4.4.2 ICU 语言包 精简、裁剪、定制、本地化
2019-04-26
判断是否为邮箱,电话的匹配规则
2019-04-26
检测密码强度工具类
2019-04-26
java中文数字转换成阿拉伯数字
2019-04-26
android RootTooles 分享
2019-04-26
分享自己的一些android util 源文件
2019-04-26
一个记账易app开发
2019-04-26
一个蒙文系统设计与实现
2019-04-26
一个nes松鼠大战游戏实现
2019-04-26
android反编译apk常用工具
2019-04-26
android源码 国内镜像下载地址
2019-04-26
如何 解包 ,编辑 ,重新打包boot images
2019-04-26
CM Development
2019-04-26