本文主要是介绍MySQL在什么样的情况下会用不上索引,或者索引失效,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
1.不遵循最左前缀原则
当我们写一个sql语句时,后面会跟上查询条件,最左前缀原则就是在我们使用复合索引的时候查询条件会从做左到右进行匹配。只有充分的利用到联合索引的时候才会用到联合索引。
比如:
select * from student where name like '雷军'% and age>18;都用上了索引
select * from student where name like %'雷军'%;索引失效
select * from student where name like '雷军'%;索引有效
2.使用!=
select * from student where name != '雷军';索引失效
3.使用or
select * from student where name like '雷军'% or age>18;索引失效
这篇关于MySQL在什么样的情况下会用不上索引,或者索引失效的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!