【发布时间】:2011-06-03 22:35:52
【问题描述】:
我想提高查询的性能,它确实有一个带有非确定性函数调用的 where 子句。
Select Count(*)
From table1
Where DateDiff(month, Cast(table1.Date As DateTime), GetDate()) = 0
我认为这个问题对 Joins 同样有效:
Select table1.column1
From table1 Inner Join table2
On table1.MonthOfHappyness =
DateDiff(month, Cast(table2.SomeDate As DateTime), GetDate())
自从
DateDiff(month, Cast(adrPkt.PktRevDato As DateTime), GetDate())
是非确定性的 我无法使用计算列创建视图并将其编入索引。 见:SQL Server (2005) - "Deleted On" DATETIME and Indexing
我有哪些选项可以提高性能?
【问题讨论】:
标签: sql-server performance sql-server-2005 join where-clause