元ネタはこちら:SQL SERVER – Get Query Plan Along with Query Text and Execution Count
稼働中のSQL Serverの状態をチェックしたくなることはままあることで、パフォーマンスを計る上でも各オブジェクトのクエリプランやら実行回数を知っておくのは悪くない。というわけで下記クエリを実行すると下図の結果が得られる。
(Where句をいじることで必要なオブジェクトのみ参照もできる)
SELECT cp.objtype AS ObjectType,
OBJECT_NAME(st.objectid,st.dbid) AS ObjectName,
cp.usecounts AS ExecutionCount,
st.TEXT AS QueryText,
qp.query_plan AS QueryPlan
FROM sys.dm_exec_cached_plans AS cp
CROSS APPLY sys.dm_exec_query_plan(cp.plan_handle) AS qp
CROSS APPLY sys.dm_exec_sql_text(cp.plan_handle) AS st
--WHERE OBJECT_NAME(st.objectid,st.dbid) = 'YourObjectName'
上記のクエリからこういう結果がでる。
上図でQueryPlanのリンクをクリックすると下図のクエリプランが表示される。
0 件のコメント:
コメントを投稿