繁体   English   中英

MySQL:在具有条件和操作的列上添加索引

[英]MySQL: Add index on column with condition and operation

在这样的查询中

SELECT * FROM myTable WHERE date = LEAST(maxDate, '2013-12-31')

我正在寻找执行期间将使用的索引。 datemaxDateDate类型。

有什么建议么?

WHERE子句中使用function(UDF或内置)不会利用现有索引,但是您可以像下面这样修改查询,它将使用datemaxdate (如果有)列上已经存在的索引,例如

SELECT * FROM myTable 
WHERE date = case when maxDate > '2013-12-31' then maxDate else '2013-12-31' end 

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM