按日期过滤的SQL Server中的任何视图都非常慢

时间:2017-02-26 12:42:07

标签: sql-server-2008

在Windows XP上的管理工作室2008 R2中,我创建并按日期过滤的每个视图都运行得很慢。例如,在10行的表格中,我按日期过滤,获得结果需要20秒。 当我在sqlquery窗口上运行查询时,它运行得很快。 其他计算机上的同一数据库工作正常 这是操作系统的问题吗?我重新安装了sql server - 没有帮助。

查询在解析阶段停留 - 例如,当我写> 1/1时开启 筛选视图的列,直到我在sql窗格中看到结果需要30秒。

2 个答案:

答案 0 :(得分:1)

视图可能有一个低效的缓存计划。

当您从SSMS运行时,它可能会作为临时运行并生成一个新的计划。

添加代码

OPTION (RECOMPILE)

到视图的最后,看看会发生什么。

答案 1 :(得分:0)

最后我发现了一个问题和解决方案:

计算机区域选项中的短日期格式设置为格式:dd / MM / yy

当我更改为dd / MM / yyyy 时 - 日期过滤开始快速运行。

我想,我之前没有看到影响就改变了它。