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

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

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

    鷹翔宇空

    學習和生活

    BlogJava 首頁 新隨筆 聯系 聚合 管理
      110 Posts :: 141 Stories :: 315 Comments :: 1 Trackbacks
    引自:http://www.dbonline.cn/source/oracle/20031218/oracle%20SQL%20performance%20tuning7.html

    ORACLE SQL性能優化系列 (七 )

    作者: black_snail

     

    24. 用EXPLAIN PLAN 分析SQL語句


    EXPLAIN PLAN 是一個很好的分析SQL語句的工具,它甚至可以在不執行SQL的情況下分析語句. 通過分析,我們就可以知道ORACLE是怎么樣連接表,使用什么方式掃描表(索引掃描或全表掃描)以及使用到的索引名稱.

    你需要按照從里到外,從上到下的次序解讀分析的結果. EXPLAIN PLAN分析的結果是用縮進的格式排列的, 最內部的操作將被最先解讀, 如果兩個操作處于同一層中,帶有最小操作號的將被首先執行.

    NESTED LOOP是少數不按照上述規則處理的操作, 正確的執行路徑是檢查對NESTED LOOP提供數據的操作,其中操作號最小的將被最先處理.


    譯者按:

    通過實踐, 感到還是用SQLPLUS中的SET TRACE 功能比較方便.

    舉例:


    SQL> list

    1 SELECT *

    2 FROM dept, emp

    3* WHERE emp.deptno = dept.deptno

    SQL> set autotrace traceonly /*traceonly 可以不顯示執行結果*/

    SQL> /

    14 rows selected.

    Execution Plan

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

    0 SELECT STATEMENT Optimizer=CHOOSE

    1 0 NESTED LOOPS

    2 1 TABLE ACCESS (FULL) OF 'EMP'

    3 1 TABLE ACCESS (BY INDEX ROWID) OF 'DEPT'

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


    Statistics

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

    0 recursive calls

    2 db block gets

    30 consistent gets

    0 physical reads

    0 redo size

    2598 bytes sent via SQL*Net to client

    503 bytes received via SQL*Net from client

    2 SQL*Net roundtrips to/from client

    0 sorts (memory)

    0 sorts (disk)

    14 rows processed


    通過以上分析,可以得出實際的執行步驟是:

    1. TABLE ACCESS (FULL) OF 'EMP'

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

    3. TABLE ACCESS (BY INDEX ROWID) OF 'DEPT'

    4. NESTED LOOPS (JOINING 1 AND 3)



    注: 目前許多第三方的工具如TOAD和ORACLE本身提供的工具如OMS的SQL Analyze都提供了極其方便的EXPLAIN PLAN工具.也許喜歡圖形化界面的朋友們可以選用它們.


                                                                       《上一頁》  |  《下一頁》
    posted on 2006-02-25 11:42 TrampEagle 閱讀(490) 評論(0)  編輯  收藏 所屬分類: 技術文摘
    主站蜘蛛池模板: 亚洲国产精品免费观看 | 亚洲午夜国产精品无卡| 日本一道本高清免费| 中文字幕免费观看视频| 亚洲国产成人精品无码区花野真一 | 99re6在线视频精品免费| 相泽南亚洲一区二区在线播放| 久久亚洲sm情趣捆绑调教| 亚洲欧洲日韩综合| 亚洲成a人片在线观看中文动漫| 免费萌白酱国产一区二区| 成人免费午间影院在线观看| 特级无码毛片免费视频尤物| ww在线观视频免费观看w| 成年网在线观看免费观看网址| 亚洲精品无码高潮喷水A片软| 亚洲日产2021三区在线 | 好男人看视频免费2019中文| 成人免费AA片在线观看| 亚洲欧美乱色情图片| 亚洲av成人一区二区三区观看在线 | 啦啦啦完整版免费视频在线观看| 国产在线精品免费aaa片| 国产午夜不卡AV免费| 久久免费的精品国产V∧| 久久精品国产免费观看三人同眠 | 日本一道综合久久aⅴ免费| 亚洲国产一成久久精品国产成人综合| 黄网站在线播放视频免费观看| 亚洲av无码专区国产不乱码| 国产福利免费视频 | 久久成人a毛片免费观看网站| 99爱免费观看视频在线| 成人毛片18女人毛片免费| 亚洲国产精品国产自在在线| 亚洲AV无码不卡在线播放| 国产午夜亚洲精品国产| 成人精品综合免费视频| 波多野结衣免费在线观看| 国产亚洲精品成人AA片新蒲金| 亚洲一区中文字幕久久|