• <ruby id="5koa6"></ruby>
    <ruby id="5koa6"><option id="5koa6"><thead id="5koa6"></thead></option></ruby>

    <progress id="5koa6"></progress>

  • <strong id="5koa6"></strong>
  • SQL Server SQL語句調優技巧(1)

    發表于:2007-06-13來源:作者:點擊數: 標簽:
    在這部分里我們所有的例子都選擇使用Microsoft SHOWPLAN_ALL輸出,因為它更緊湊并且展示典型的信息。(Sybase的查詢計劃基本與此相同,可能包含其它一些信息)大部分的例子都是要么基于PUBS 數據庫 ,要么基于標準系統表的。我們在PUBS數據庫中對用到的表進

    在這部分里我們所有的例子都選擇使用Microsoft SHOWPLAN_ALL輸出,因為它更緊湊并且展示典型的信息。(Sybase的查詢計劃基本與此相同,可能包含其它一些信息)大部分的例子都是要么基于PUBS數據庫,要么基于標準系統表的。我們在PUBS數據庫中對用到的表進行了很大擴充,對很多表增加了好幾萬行。

    子查詢優化

    一條好的值得稱贊的規則是盡量用連接代替所有的子查詢。優化器有時可以自動將子查詢“扁平化”,并且用常規或外連接代替。但那樣也不總是有效。明確的連接對選擇表的順序和找到最可能的計劃給出了更多的選項。當你優化一個特殊查詢時,了解一下是否去掉自查詢可產生很大的差異。

    示例

    下面查詢選擇了pubs數據庫中所有表的名字,以及每個表的聚集索引(如果存在)。如果沒有聚集索引,表名仍然顯示在列表中,在聚集索引列中顯示為虛線。兩個查詢返回同樣的結果集,但第一個使用了一個子查詢,而第二個使用一個外連接時。比較Microsoft SQL Server產生的查詢計劃:

     

     

    不必更深探索,我們可以看到在CPU和總的實耗時間方面連接更快,僅需要子查詢方案邏輯讀的一半。此外,這兩種情況伴隨著相同的結果集,雖然排序的順序不同,這是因為連接查詢(由于它的GROUP BY子句)有一個隱含的ORDER BY:

     

    查看這個子查詢方法展示的查詢計劃:

     


    共4頁: 1 [2] [3] [4] 下一頁

    原文轉自:http://www.kjueaiud.com

    ...
    老湿亚洲永久精品ww47香蕉图片_日韩欧美中文字幕北美法律_国产AV永久无码天堂影院_久久婷婷综合色丁香五月

  • <ruby id="5koa6"></ruby>
    <ruby id="5koa6"><option id="5koa6"><thead id="5koa6"></thead></option></ruby>

    <progress id="5koa6"></progress>

  • <strong id="5koa6"></strong>