統計情報の取得履歴

統計情報がいつ更新されたかはSTATS_DATE関数で取得できる

 

使用例

SELECT
 so.name
, ss.name as 統計情報名
, ss.auto_created as 統計情報の自動生成
, ss.user_created as 統計情報のユーザー生成
, ss.no_recompute as NO_RECOMPUTEオプションの使用
, STATS_DATE(ss.object_id, ss.stats_id) as 最終更新日
FROM
sys.objects AS so
LEFT JOIN
sys.stats AS ss
ON
ss.object_id = so.object_id
WHERE so.type = 'U' --ユーザーテーブルのみ
ORDER BY
so.name

 

また DBCC SHOW_STATISTICSで詳細の値(行数など)を確認することができる

使用例 引数:テーブル名、インデックス名

 

DBCC SHOW_STATISTICS('tbl_hoge','PK_tbl_hoge')

 

 

動作確認環境:SQLServer2017