proc が実行された回数を特定しようとしています。
プラン ハンドルで検索すると、dm_exec_cached_plans にはレコードが見つかりますが、dm_exec_query_stats には見つかりません。私が見つけることができるすべてのドキュメントは、レコードが dm_exec_cached_plans にある場合、dm_exec_query_stats に常に対応するレコードが必要であることを示しています。
これが当てはまらないシナリオを知っている人はいますか?
proc が実行された回数を特定しようとしています。
プラン ハンドルで検索すると、dm_exec_cached_plans にはレコードが見つかりますが、dm_exec_query_stats には見つかりません。私が見つけることができるすべてのドキュメントは、レコードが dm_exec_cached_plans にある場合、dm_exec_query_stats に常に対応するレコードが必要であることを示しています。
これが当てはまらないシナリオを知っている人はいますか?
どこでそれを読みましたか-レコードが dm_exec_cached_plans にある場合、常に対応するレコードが dm_exec_query_stats にあるはずです?
実際dm_exec_cached_plans
には、プラン キャッシュにコンパイルされたすべてのプランdm_exec_query_stats
のレコードがあり、対応するキャッシュされたプランのすべてのクエリ ステートメントのレコードを持つことができます。dm_exec_query_stats
キャッシュ オブジェクト タイプが "Parse Tree" または "CLR Compiled Proc" のキャッシュ プラン、またはシステム ストアド プロシージャ、アドホック クエリ、プリペアド ステートメントなどのオブジェクトの場合は、空にすることができます。
sys.dm_exec_procedure_stats の使用はどうですか?
http://msdn.microsoft.com/en-us/library/cc280701%28v=sql.100%29.aspxを参照してください。