FORCE SCAN可以提高查询性能

时间:2012-10-31 09:56:55

标签: sql sql-server

我认为FORCE SEEK可以提高SELECT查询的性能,但想知道FORCE SCAN是否也可以提高查询性能。

有人可以用例子解释吗?

1 个答案:

答案 0 :(得分:3)

假设您有一个查询将产生1.000.000行,但SQL Server估计只有100个。然后SQL Server估计100个索引查找与表查找比完整表扫描更快。但相反,它最终会进行1.000.000索引查找和查找!

在这种情况下,添加force scan提示可以提高查询的效果。

请注意,这种情况很不寻常。 SQL Server尝试针对最坏的情况进行优化,并且不会使用搜索,除非它非常确定它们没有太多。这就是为什么forceseek被更频繁地使用forcescan