2010-08-16 75 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