索引失效的原因:
-
全值匹配我最爱
-
最佳左前缀法则,带头大哥不能死,中间兄弟不能少。
-
不要在索引列上做任何操作
-
范围条件后列上索引失效
explain select * from student where age > 1 and name = ‘王五’;
查找级别是范围,name这个索引失效了 -
尽量使用覆盖索引减少使用select *
-
使用不等于(!= 或者<>)不能使用索引
-
使用 is null 或者 is not null 也不能使用索引
-
like 已通配符开头(%abc)导致索引失效 (解决方法:使用覆盖索引)
-
少用or,用它来连接索引会失效
***帅气的远远啊***