《Dissecting SQL Server Execution Plans》隨記

來源:互聯網
上載者:User

1.常用分析語句
DBCC FREEPROCCACHE --清緩衝
DBCC DROPCLEANBUFFERS --清緩衝區

--擷取效能資訊
set statistics profile on

set statistics io on

set statistics time on

使用 SET STATISTICS XML ON 選項開啟 XML 執行程序表功能

--查看已經緩衝的sql
SELECT  [cp].[refcounts]
       ,[cp].[usecounts]
       ,[cp].[objtype]
       ,[st].[dbid]
       ,[st].[objectid]
       ,[st].[text]
       ,[qp].[query_plan]
FROM    sys.dm_exec_cached_plans cp
        CROSS APPLY sys.dm_exec_sql_text(cp.plan_handle) st
        CROSS APPLY sys.dm_exec_query_plan(cp.plan_handle) qp ;

2.何時實際與執行計畫不同?
    1.統計到期
    2. 需要並發

3.彙總索引包含全部的列資料,因此即使返回全部列也不會有【嵌套迴圈】和【鍵尋找】

排序:SQLSERVER會首先利用記憶體進行排序,若記憶體不足,則會啟用TEMPDB進行排序,此時將報告一個警告,如果出現警告,請改善記憶體大小或程式本身。

 

4.CTE 通用資料表運算式 可作為遞迴

 

5.實體化視圖/索引檢視表(視圖儲存資料,tempdb,插入時自動更新)
    1. 建立索引檢視表的時候需要指定表所屬的架構
    2.在建立索引檢視表的select語句時,不使用*,必須指定具體的列名
    3.在建立索引檢視表的select 語句中,不能存在重複的列名,這個不舉例了
    4. 只能為索引檢視表建立唯一叢集索引

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.