Pரதீப் Asked: 2016-06-11 01:46:39 +0800 CST2016-06-11 01:46:39 +0800 CST 2016-06-11 01:46:39 +0800 CST 自动创建的统计数据与手动创建的统计数据 772 查询优化器Statistics自动创建的和使用语句创建的有什么区别吗?CREATE STATISTICS 手动创建的统计信息会AUTO_UPDATE_STATISTICS在ON. 一个比另一个有什么优势吗?我通过谷歌和 MSDN 并没有得到太多关于差异的信息。 为什么在这里问是我们正在维护一个脚本,我们用来在每个创建表脚本之后手动创建统计信息。但是在少数脚本中,我们错过了保留统计脚本的功能,因此很少有统计信息会自动生成。这会不会有影响 参考 统计数据 更新统计 sql-server sql-server-2012 1 个回答 Voted Best Answer Erik Darling 2016-06-11T02:10:32+08:002016-06-11T02:10:32+08:00 唯一的主要区别是 SQL Server 只会创建单列统计信息。您可以创建多列和过滤统计信息。如果您创建的任何统计数据都是这些类型,那么它们可能很重要。否则,当认为对查询有用时,SQL Server 可能会在这些单个列上创建系统统计信息。 不幸的是,您必须进行一些挖掘才能弄清楚您的查询使用了哪些统计信息。 请参阅此处以检查计划缓存。 请参阅此处以在执行查询时检查查询。请注意,在 2014+ 上,您需要不同的跟踪标志。
唯一的主要区别是 SQL Server 只会创建单列统计信息。您可以创建多列和过滤统计信息。如果您创建的任何统计数据都是这些类型,那么它们可能很重要。否则,当认为对查询有用时,SQL Server 可能会在这些单个列上创建系统统计信息。
不幸的是,您必须进行一些挖掘才能弄清楚您的查询使用了哪些统计信息。
请参阅此处以检查计划缓存。
请参阅此处以在执行查询时检查查询。请注意,在 2014+ 上,您需要不同的跟踪标志。