在像这样的查询中
SELECT * FROM myTable WHERE date = LEAST(maxDate, '2013-12-31')
我正在寻找将在执行期间使用的索引。 date
和maxDate
是Date
种类型。
有什么建议吗?
答案 0 :(得分:1)
在WHERE
子句中使用函数(UDF或内置函数)不会利用现有索引,但您可以修改下面的查询,这将使用date
上现有的索引或maxdate
(如果有的话)列
SELECT * FROM myTable
WHERE date = case when maxDate > '2013-12-31' then maxDate else '2013-12-31' end