在截断和重新填充表格后,是否需要更新统计信息

时间:2015-08-20 12:27:10

标签: sql-server

作为维护过程(MS SQL Server 2008)的一部分,我们需要截断然后重新填充一些表。重新填充的表中的大多数数据将与截断之前的数据相同(> 95%)。这是每晚进行的。

在重新填充之后,是否有必要更新表格中的统计数据,或者是否可以不那么经常地考虑新的/更新的数据?

提前致谢。

1 个答案:

答案 0 :(得分:0)

数据库

无需更新自动更新的统计信息

CREATE TABLE T
    (
        number   integer NOT NULL
    );

    INSERT INTO t

SELECT  distinct number  
FROM master..spt_values
WHERE number < 500

select 1 from t where number = 1

  DBCC SHOW_STATISTICS (N'T', number) WITH STAT_HEADER, HISTOGRAM

  truncate table t




insert  into t
SELECT  distinct number  
FROM master..spt_values
WHERE number > 500;

select 1 from t where number > 1  and number <500

  DBCC SHOW_STATISTICS (N'T', number) WITH STAT_HEADER, HISTOGRAM

编辑*数据库级别的自动更新应为ON(默认情况下为启用)