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'

 

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

    





免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM