打印本文 打印本文 关闭窗口 关闭窗口
Oracle常見問題集(三)
作者:武汉SEO闵涛  文章来源:敏韬网  点击数6583  更新时间:2009/4/22 22:05:50  文章录入:mintao  责任编辑:mintao
最高效)

SELECT .

FROM EMP E

WHERE NOT EXISTS (SELECT X

FROM DEPT D

WHERE D.DEPT_NO = E.DEPT_NO

AND DEPT_CAT = A);

20. 用表連接替換EXISTS

 

通常來說 , 採用表連接的方式比EXISTS更有效率

SELECT ENAME

FROM EMP E

WHERE EXISTS (SELECT X

FROM DEPT

WHERE DEPT_NO = E.DEPT_NO

AND DEPT_CAT = A);

 

(更高效)

SELECT ENAME

FROM DEPT D,EMP E

WHERE E.DEPT_NO = D.DEPT_NO

AND DEPT_CAT = A ;

 

(譯者按: RBO的情況下,前者的執行路徑包括FILTER,後者使用NESTED LOOP)

 

 << 上一页  [11] [12] [13] 

打印本文 打印本文 关闭窗口 关闭窗口