
阅读如下的执行计划,给出SQL的执行顺序。
1-----------------------------------------
2| Id | Operation
3-----------------------------------------
4| 0 | SELECT STATEMENT
5| 1 | SORT AGGREGATE
6| 2 | VIEW
7| 3 | UNION-ALL
8|* 4 | FILTER
9|* 5 | HASH JOIN
10| 6 | TABLE ACCESS FULL
11|* 7 | TABLE ACCESS FULL
12|* 8 | TABLE ACCESS BY INDEX ROWID
13|* 9 | INDEX UNIQUE SCAN
14| 10 | NESTED LOOPS
15| 11 | INDEX FULL SCAN
16| 12 | TABLE ACCESS CLUSTER
17|* 13 | INDEX UNIQUE SCAN
18-------------------------------------------
分析:采用最右最上最先执行的原则看层次关系,在同一级如果某个动作没有子ID,那么就最先执行,首先,6、7、9、13最右,所以,6,7最先执行做HASH JOIN,为6,7,5。
第二,8有子节点,接下来是9,8。
第三,HASH的结果和8的结果做FILTER过滤。
第四,10这个节点根据原则是11,13,12,10。
第五,剩下依次是3,2,1,0。
所以,该图的执行顺序是6,7,5,9,8,4,11,13,12,10,3,2,1,0。
本文选自《Oracle程序员面试笔试宝典》,作者:李华荣。

---------------优质麦课------------

详细内容可以添加麦老师微信或QQ私聊。

● 本文作者:小麦苗,只专注于数据库的技术,更注重技术的运用
● 作者博客地址:http://blog.itpub.net/26736162/abstract/1/
● 本系列题目来源于作者的学习笔记,部分整理自网络,若有侵权或不当之处还请谅解
● 版权所有,欢迎分享本文,转载请保留出处
● QQ:646634621 QQ群:618766405
● 提供OCP、OCM和高可用部分最实用的技能培训
● 题目解答若有不当之处,还望各位朋友批评指正,共同进步
长按下图识别二维码或微信扫描下图二维码来关注小麦苗的微信公众号:xiaomaimiaolhr,学习最实用的数据库技术。



最后修改时间:2020-01-10 19:13:24
文章转载自DB宝,如果涉嫌侵权,请发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。




