<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    Vincent.Chan‘s Blog

    常用鏈接

    統計

    積分與排名

    網站

    最新評論

    ORACLE SQL性能優化系列 (五)

    ORACLE SQL性能優化系列 (五)

    作者: black_snail

     

    關鍵字 ORACLE PERFORMANCE SQL TUNING

    出處 http://WWW.DBASUPPORT.COM



    17. 使用表的別名(Alias)

    當在SQL語句中連接多個表時, 請使用表的別名并把別名前綴于每個Column上.這樣一來,就可以減少解析的時間并減少那些由Column歧義引起的語法錯誤.


    (譯者注: Column歧義指的是由于SQL中不同的表具有相同的Column名,當SQL語句中出現這個Column時,SQL解析器無法判斷這個Column的歸屬)


    18. 用EXISTS替代IN

    在許多基于基礎表的查詢中,為了滿足一個條件,往往需要對另一個表進行聯接.在這種情況下, 使用EXISTS(或NOT EXISTS)通常將提高查詢的效率.


    低效:

    SELECT *

    FROM EMP (基礎表)

    WHERE EMPNO > 0

    AND DEPTNO IN (SELECT DEPTNO

    FROM DEPT

    WHERE LOC = ‘MELB')


    高效:

    SELECT *

    FROM EMP (基礎表)

    WHERE EMPNO > 0

    AND EXISTS (SELECT ‘X'

    FROM DEPT

    WHERE DEPT.DEPTNO = EMP.DEPTNO

    AND LOC = ‘MELB')


    (譯者按: 相對來說,用NOT EXISTS替換NOT IN 將更顯著地提高效率,下一節中將指出)



    19. 用NOT EXISTS替代NOT IN

    在子查詢中,NOT IN子句將執行一個內部的排序和合并. 無論在哪種情況下,NOT IN都是最低效的 (因為它對子查詢中的表執行了一個全表遍歷). 為了避免使用NOT IN ,我們可以把它改寫成外連接(Outer Joins)或NOT EXISTS.


    例如:

    SELECT …

    FROM EMP

    WHERE DEPT_NO NOT IN (SELECT DEPT_NO

    FROM DEPT

    WHERE DEPT_CAT='A');


    為了提高效率.改寫為:


    (方法一: 高效)

    SELECT ….

    FROM EMP A,DEPT B

    WHERE A.DEPT_NO = B.DEPT(+)

    AND B.DEPT_NO IS NULL

    AND B.DEPT_CAT(+) = ‘A'



    (方法二: 最高效)

    SELECT ….

    FROM EMP E

    WHERE NOT EXISTS (SELECT ‘X'

    FROM DEPT D

    WHERE D.DEPT_NO = E.DEPT_NO

    AND DEPT_CAT = ‘A');

    posted on 2006-02-25 22:30 Vincent.Chen 閱讀(149) 評論(0)  編輯  收藏 所屬分類: Database

    主站蜘蛛池模板: 亚洲色欲或者高潮影院| 日韩在线天堂免费观看| 亚洲日本乱码在线观看| 亚洲av第一网站久章草| 一二三四在线播放免费观看中文版视频 | 91精品全国免费观看青青| 免费看国产一级特黄aa大片| 亚洲av无码一区二区三区四区| 免费高清在线影片一区| 狠狠色伊人亚洲综合网站色| 啦啦啦高清视频在线观看免费| 亚洲午夜国产精品| 一本无码人妻在中文字幕免费| 亚洲中文久久精品无码1| 国产免费不卡v片在线观看| 456亚洲人成影院在线观| 国产在线国偷精品产拍免费| 亚洲夂夂婷婷色拍WW47| 永久免费毛片手机版在线看| 美女黄网站人色视频免费| 亚洲精品一级无码中文字幕| caoporn国产精品免费| 亚洲精品国产精品乱码视色| 久久综合给合久久国产免费| 亚洲午夜在线一区| 免费A级毛片在线播放不收费| 日韩a毛片免费观看| 亚洲一区二区三区无码中文字幕 | 精品久久久久久亚洲综合网| 亚洲日韩国产精品乱| 97无码人妻福利免费公开在线视频| 久久久亚洲欧洲日产国码二区| 国产免费毛不卡片| 亚州**色毛片免费观看| 亚洲自偷自偷精品| 在线观看免费宅男视频| 中文字幕在线免费视频| 亚洲国产一区在线观看| 亚洲国产a级视频| 久久国产色AV免费看| 日韩亚洲人成在线综合|