f SQL Server 的 Auto Update Statistics ~ 迪貝之家

Pages

SQL Server 的 Auto Update Statistics

 

Pro SQL Server Internals 的描述如下 :


它也提到了這段話


所以手上的專案
我都把相容性調到最新
怎麼驗證 ???
我們舉一個表格來看它有多少statistics物件
select
s.stats_id as [Stat ID],
sc.name + '.' + t.name as [Table],
s.name as [Statistics]
,p.last_updated,
p.rows, p.rows_sampled,
p.modification_counter as [Mod Count]
from
sys.stats s join sys.tables t on
s.object_id = t.object_id
join sys.schemas sc on
t.schema_id = sc.schema_id
outer apply
sys.dm_db_stats_properties(t.object_id,s.stats_id) p
where
sc.name = 'dbo' and t.name = 'cc_trace';


紅色底線部分應該是最近的auto update
它應該是發生在
查詢被丟進資料庫時
optimizer認為statistics outdated
偷偷地幫你更新了column 資料分布數據
因為更新時間與上下兩群有很大的差異
其下我可以很肯定是人工排入的update statisitcs的job
我們再來看該column statistics 的細節




欄位名稱是bill_id
應該是最常用到欄位吧~~