很久没写blog,不是懒,实在是最近我这的访问速度不好,用firefox经常上传不了图片 .......
今天无意发现了SQL Server 2008 Datetime Cast 成 Date 类型可以使用索引,分享一下:
测试环境:
USE TEMPDB
GO
CREATE TABLE TB
(
ID INT IDENTITY(1,1) PRIMARY KEY,
NAME VARCHAR(200),
OPTIME DATETIME DEFAULT GETDATE()
)
GO
DECLARE @I INT = 1
WHILE @I [Expr1006] AND [tempdb].[dbo].[TB].[OPTIME] < [Expr1007]), WHERE:(CONVERT(date,[tempdb].[dbo].[TB].[OPTIME],0)='2010-05-27') ORDERED FORWARD)
|--Clustered Index Seek(OBJECT:([tempdb].[dbo].[TB].[PK__TB__3214EC27753864A1]), SEEK:([tempdb].[dbo].[TB].[ID]=[tempdb].[dbo].[TB].[ID]) LOOKUP ORDERED FORWARD)
执行计划将'2010-05-27'得到了Expr1006和Expr1007,然后再走索引查找:OPTIME>Expr1006 and OPTIME