♣
题目部分
在Oracle中,举例说明“DISTINCT配置(Distinct Placement,DP)”查询转换。
♣
答案部分
1LHR@orclasm > SELECT /*+FULL(A) FULL(B)*/ DISTINCT A.ENAME,B.DNAME FROM SCOTT.EMP A,SCOTT.DEPT B WHERE A.DEPTNO=B.DEPTNO ; 2 314 rows selected. 4 5 6Execution Plan 7---------------------------------------------------------- 8Plan hash value: 2962452962 9 10---------------------------------------------------------------------------- 11| Id | Operation | Name | Rows | Bytes | Cost (%CPU)| Time | 12---------------------------------------------------------------------------- 13| 0 | SELECT STATEMENT | | 14 | 588 | 8 (25)| 00:00:01 | 14| 1 | HASH UNIQUE | | 14 | 588 | 8 (25)| 00:00:01 | 15|* 2 | HASH JOIN | | 14 | 588 | 7 (15)| 00:00:01 | 16| 3 | TABLE ACCESS FULL| DEPT | 4 | 88 | 3 (0)| 00:00:01 | 17| 4 | TABLE ACCESS FULL| EMP | 14 | 280 | 3 (0)| 00:00:01 | 18---------------------------------------------------------------------------- 19 20Predicate Information (identified by operation id): 21--------------------------------------------------- 22 23 2 - access("A"."DEPTNO"="B"."DEPTNO") 24 25Note 26----- 27 - dynamic sampling used for this statement (level=2) 28 29 30Statistics 31---------------------------------------------------------- 32 46 recursive calls 33 6 db block gets 34 14 consistent gets 35 0 physical reads 36 2620 redo size 37 870 bytes sent via SQL*Net to client 38 520 bytes received via SQL*Net from client 39 2 SQL*Net roundtrips to/from client 40 0 sorts (memory) 41 0 sorts (disk) 42 14 rows processed 43 44LHR@orclasm > SELECT /*+FULL(A) FULL(B) PLACE_DISTINCT*/ DISTINCT A.ENAME,B.DNAME FROM SCOTT.EMP A,SCOTT.DEPT B WHERE A.DEPTNO=B.DEPTNO ; 45 4614 rows selected. 47 48 49Execution Plan 50---------------------------------------------------------- 51Plan hash value: 3633957927 52 53----------------------------------------------------------------------------------------- 54| Id | Operation | Name | Rows | Bytes | Cost (%CPU)| Time | 55----------------------------------------------------------------------------------------- 56| 0 | SELECT STATEMENT | | 14 | 588 | 9 (34)| 00:00:01 | 57| 1 | HASH UNIQUE | | 14 | 588 | 9 (34)| 00:00:01 | 58|* 2 | HASH JOIN | | 14 | 588 | 8 (25)| 00:00:01 | 59| 3 | TABLE ACCESS FULL | DEPT | 4 | 88 | 3 (0)| 00:00:01 | 60| 4 | VIEW | VW_DTP_377C5901 | 14 | 280 | 4 (25)| 00:00:01 | 61| 5 | HASH UNIQUE | | 14 | 280 | 4 (25)| 00:00:01 | 62| 6 | TABLE ACCESS FULL| EMP | 14 | 280 | 3 (0)| 00:00:01 | 63----------------------------------------------------------------------------------------- 64 65Predicate Information (identified by operation id): 66--------------------------------------------------- 67 68 2 - access("ITEM_1"="B"."DEPTNO") 69 70Note 71----- 72 - dynamic sampling used for this statement (level=2) 73 74 75Statistics 76---------------------------------------------------------- 77 59 recursive calls 78 5 db block gets 79 48 consistent gets 80 0 physical reads 81 2552 redo size 82 873 bytes sent via SQL*Net to client 83 520 bytes received via SQL*Net from client 84 2 SQL*Net roundtrips to/from client 85 0 sorts (memory) 86 0 sorts (disk) 87 14 rows processed
& 说明:
有关查询转换的更多内容可以参考我的BLOG:http://blog.itpub.net/26736162/viewspace-2140618/
本文选自《Oracle程序员面试笔试宝典》,作者:李华荣。

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