浅析Oracle 10gR2中优化器对表关联的优化

王朝oracle·作者佚名  2008-05-31
窄屏简体版  字體: |||超大  

在以前的一篇文章中,介绍过额外的关联对SQL的影响是很大的,所以在sql审核的工作中,对于表关联的关注是相当多的,假如冗余能够优化掉表关联,偶都尽量在表设计上做些冗余处理;在10gR2中,发现优化器可以优化掉一些不必要的关联……

9206:

SQL> set autot on

SQL> select count(*)

2 from dept d, emp e

3 where d.deptno = e.deptno;

COUNT(*)

----------

12

Execution Plan

----------------------------------------------------------

0 SELECT STATEMENT Optimizer=CHOOSE

1 0 SORT (AGGREGATE)

2 1 NESTED LOOPS

3 2 TABLE Access (FULL) OF 'EMP'

4 2 INDEX (UNIQUE SCAN) OF 'PK_DEPT' (UNIQUE)

10202

SQL> set autot on

SQL> select count(*)

2 from dept d, emp e

3 where d.deptno = e.deptno;

COUNT(*)

----------

12

?????

----------------------------------------------------------

Plan hash value: 2083865914

--------------------------------------------------------------------------

Id Operation Name Rows Bytes Cost (%CPU) Time

--------------------------------------------------------------------------

0 SELECT STATEMENT 1 13 3 (0) 00:00:01

1 SORT AGGREGATE 1 13

* 2 TABLE ACCESS FULL EMP 12 156 3 (0) 00:00:01

--------------------------------------------------------------------------

Predicate Information (identified by operation id):

---------------------------------------------------

2 - filter("E"."DEPTNO" IS NOT NULL)

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
 
 
© 2005- 王朝網路 版權所有 導航