簡體   English   中英

SQL 服務器執行計划

[英]SQL server execution plan

如何捕獲 SQL 查詢執行計划。 有人告訴我可以通過系統表檢索它們

正如gbn指出的那樣,您可以通過多種不同方式來查看查詢的執行計划。 鑒於您的問題涉及系統表的使用,我假設您正在談論動態管理視圖(DMV),因此您也僅對計划緩存中當前的查詢計划感興趣。

如果您有興趣從計划緩存中為特定查詢標識查詢計划,則可以使用如下形式的查詢:

SELECT  deqs.plan_handle ,
        deqs.sql_handle ,
        execText.text
FROM    sys.dm_exec_query_stats deqs
        CROSS APPLY sys.dm_exec_sql_text(deqs.plan_handle) AS execText
WHERE   execText.text LIKE '%QueryText%'

為了進一步閱讀,請查看文章查詢計划元數據的DMV。


如果說您對查看計划緩存中當前引用的性能最差的查詢的性能更感興趣,則可以利用出色且免費的SQL Server性能儀表板報告。


當然,還有其他查看查詢計划的方法,但是在不完全知道您要實現的目標的情況下,這些方法可能不適合您的需求。

在MSDN上的快速搜索將為您提供: http : //msdn.microsoft.com/zh-cn/library/ms189747.aspx

希望能幫助到你。

這個問題可能更清楚,但我想有些人來這里可能正在尋找最簡單的方法來獲取查詢的執行計划

捕獲查詢執行計划的最簡單方法是單擊“包括實際執行計划”按鈕並在 SSMS 上執行查詢

包括實際執行計划按鈕

結果將與查詢結果一起顯示為選項卡

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM