索引失效的情况
1.最佳左前缀法则
最佳左前缀法则:如果索引是多字段的复合索引,要遵守最佳左前缀法则,指的是查询从索引的最左前列开始并且不跳过索引中的字段
口诀:带头大哥不能死,中间兄弟不能断
2.索引列上不计算
二者执行结果一样,但是第二个索引没有用上
因此,在索引列上进行计算,会是索引失效
口诀:索引列上不计算
3.范围之后全失效
查询的字段都用到了索引,但是范围之后的索引字段会失效
口诀:范围之后全失效
4.覆盖索引尽量用
写SQL尽量查询什么字段就用什么字段
口诀:查询一定不用*
5.不等有时会失效
6.like百分加右边
如果一定要使用%like,则应该用覆盖索引
7.字符要加单引号
最终口诀:
带头大哥不能死,中间兄弟不能断
索引列上不计算,范围之后全失效
覆盖索引尽量用,不等有时会失效
like百分加右边,字符要加单引号
一般SQL少用or