MySql where 后面使用函数导致索引失效问题

项目中sql语句 where 后面使用了函数进行比较 

DATE_FORMAT(o.create_time, '%Y-%m-%d') = CURDATE()
这个时候 create_time 是有索引的,但是查询速度非常慢。
执行 explain 发现索引没有生效, sql语句修改成下面的形式了,速度提上去了
o.create_time >='2019-12-25' and o.create_time <= '2019-12-25 23:59:59'

 

在网上发现了一篇博客,索引使用注意规则(索引失效--存在索引但不使用索引)*

    




posted @ 2019-12-25 09:53  海天依色  阅读(4973)  评论(1编辑  收藏  举报