2010-08-16 77 views
1

的子句我有我运行WHERE子句中针对与日期范围在索引视图

WHERE GETDATE() BETWEEN start_date AND end_date 

一个查询的索引图。

我怀疑我的问题的答案可能是否定的,但是,是否有可能将其推入索引视图或做一些巧妙的事情来实现相同的效果?

我的问题是,索引视图将使用从GETDATE()将什么GETDATE()返回索引视图时创建,这不是我想要的。我总是希望这是当前的日期和时间。此外,我正在使用SQL Server 2008.

回答

1

您将无法在索引视图中执行此操作。

想想SQL Server如何实现这一点。每一个3ms(或GETDATE()值都可以改变),SQL Server将不得不重新评估是否应将新行添加到视图中,或者是否需要删除任何现有行。

将此与常用示例和索引视图的使用限制进行比较,其中希望SQL Server可以在基表的适当INSERT/UPDATE语句期间作出包含/排除决定。

+0

感谢您的回答,对于我的要求,我可以将一个使用存储过程的解决方案作为每两秒钟运行一次的代理作业。对于我所做的,这个滞后将是完全可以接受的。 – Chris 2010-08-17 14:51:19