何时更新统计信息?
仅当自动更新统计信息功能无法满足您的要求时才需要更新。 我是说,如果自动创建和自动更新统计信息都开启,并且由于统计信息不准确或过时而导致查询计划不佳,那么控制统计信息的创建和更新可能是个好主意。 但是,如果您对SQL Server的性能和查询执行时间满意。
那么我建议停止在维护计划中使用更新统计信息命令。
更新统计信息很重要且有用 1. 可以使SQL Server查询优化器始终生成良好的查询计划,同时保持开发和管理成本低廉 2. 统计信息被查询优化器用于估计表达式的选择性,从而估计中间和最终查询结果的大小。 3. 良好的统计信息可以使优化器准确评估不同查询计划的成本,然后选择高质量的计划
如果您想手动更新统计信息,您首先应该了解何时自动更新统计信息
如果 SQL Server 查询优化器需要一个表中某个列的统计信息,并且该表自上次创建或更新统计信息以来经历了大量的更新活动,SQL Server 将通过对列值进行抽样(使用自动更新统计信息)来自动更新统计信息。统计信息的自动更新由查询优化或编译计划执行触发,并且仅涉及查询中引用的一部分列。如果 AUTO_UPDATE_STATISTCS_ASYNC 为 OFF,则在查询编译之前会更新统计信息。
以下是关于何时触发 SQL Server 中的更新统计信息的文章: