说,我有一个索引定义如下:SQL Server 2008中 - 过滤索引
CREATE NONCLUSTERED INDEX [IX_Marker] ON [dbo].[Marker]
(
[Run] ASC,
[EquipmentID] ASC,
[ReadTime] DESC
)
INCLUDE ([Sequence])
WHERE ([ReadTime]>'07/01/2011')
在什么情况下会在SQL Server计划生成器选择该指数?例如,假设我有以下查询:
Select * From Marker Where ReadTime > '3/1/2011'
我假设索引不会在这种情况下使用?但是如果我将Where子句更改为'8/1/2011',它会被使用吗?
不正确。在Where子句后面添加OPTION(RECOMPILE),它将被使用。 –
你真的确定你试过吗?我尝试过使用各种过滤索引,它从来没有工作。 –
是的,我已经尝试过,它的工作原理。 –