优秀的编程知识分享平台

网站首页 > 技术文章 正文

什么情况下索引会失效 ?(什么情况导致索引失效)

nanyue 2024-10-28 16:38:53 技术文章 11 ℃

1、索引在使用的时候没有遵循最左匹配法则

2、模糊查询,如果%号在前面也会导致索引失效。如果在添加索引的字段上进行了运算操作或者类型转换也都会导致索引失效。

3、不要在索引列上进行运算操作, 索引将失效。

4、字符串不加单引号,造成索引失效。

5、范围查询右边的列,不能使用索引。

所以,通常情况下,想要判断出这条sql是否有索引失效的情况,可以使用explain执行计划来分析。

主要解释一下最左匹配法则。其实原理还是来自B+树。只有最左边的字段参与查询了,那么这个联合索引才会生效。因为如果最开始的都无法走索引查,那么只能全表扫描了。

如果中间用了范围查询,那么后面的字段也不会走索引了。

最近发表
标签列表