更新统计信息
SQL Server维护命令
-- Single table, full scan:
UPDATE STATISTICS dbo.Customer WITH FULLSCAN;
-- Specific statistic, with sampling:
UPDATE STATISTICS dbo.Customer IX_Customer_Email WITH SAMPLE 30 PERCENT;
-- Bulk for the whole database (user tables), sampled:
EXEC sys.sp_updatestats;作用
更新优化器使用的列/索引统计信息;确保执行计划和基数估算正确。
适用场景
大量数据变更/加载后、出现执行计划回归时;索引重建已经完整刷新统计信息(无需单独更新)。
注意
FULLSCAN 准确但开销大;在大表上会产生 I/O 负载。sp_updatestats 只更新发生变化的统计信息,并使用默认采样。索引 REBUILD 之后再对同一索引执行 UPDATE STATISTICS 是不必要的。