Datetime的哪个条件会更快?

sha*_*shi 3 sql t-sql sql-server sql-server-2005

我在表中有一个名为CreatedOn的Datetime列.CreatedOn也是订单下降的非聚集索引的一部分.

以前在哪里条件我有如下条件

WHERE DateDiff(d,CreatedOn,GetDate()) < 180 AND ... other conditions
Run Code Online (Sandbox Code Playgroud)

我把它改成了

WHERE CreatedOn > '2012-04-04 00:00:00.000' AND ... other conditions
Run Code Online (Sandbox Code Playgroud)

我在C#代码中计算截止日期,然后将其放入adhoc查询中.

据我说,第二个条件应该更快,但我还没有看到查询执行时间的重大变化.但随着桌子大小的增加,哪一个会跑得更快?

gbn*_*gbn 6

第二种形式.

将函数放在列上会使索引的使用无效(几乎在所有情况下,所以只需遵循此规则).请参见"十大常见的SQL编程错误",2号