![]() |
1
3
这听起来像 parameter sniffing . 在娱乐方面,这是一个新的目标和新的计划。尽管视图已展开,但查询文本引用的视图与以前的视图不同 |
![]() |
2
0
我以前看过这个问题,这是个奇怪的问题。当您重新创建视图时,SQL Server将重新创建视图使用的查询执行计划。随着时间的推移,视图中的查询可能在索引不正确的表上进行了联接,因此索引上的SQL统计数据实际上开始降低性能,而不是帮助它解决问题。因此,一旦您重新创建了视图,SQL Server现在就用给定的统计信息为视图标识最佳的查询执行计划,这就是为什么您看到视图再次运行得更快的原因。然后,一旦表统计数据开始增加,视图的性能就会开始下降,因为SQL Server不知道为视图运行查询执行计划的最佳方法。我建议您检查视图中的表,并调查正在使用的表的联接和索引。如果在其他查询窗口中执行视图的内容,则可以比较该视图运行的查询的估计查询执行计划和该视图使用的估计查询执行计划。通过这个,您可以识别出有问题的查询。 |
![]() |
S. Jacson · 任意两台发电机的速度差(内置功能) 2 年前 |
![]() |
Sadeq Dousti · 相当于“嵌套删除”的执行性能SQL查询 2 年前 |
![]() |
Prince · 复制大型文件需要更多时间 2 年前 |
![]() |
Sagar · 为什么在循环之外声明变量会更快? 2 年前 |
![]() |
seco · 如何在不挂起页面的情况下加载JS 2 年前 |