索引最左匹配原则

123 阅读1分钟

1 查询是必须包含联合索引中最左边的索引,否则索引全部失效

2 如果包含联合索引最左边的索引,但是跳过了联合索引中间的索引,那么索引会部分生效,即左侧索引生效。

需要注意的是,查询时,只要最左索引字段存在就行,和and连接顺序没有关系。

例如联合索引是(name, age) 查询时 where name = '' and age = '' 和 where age = '' and name = '' 都是符合最左匹配原则的

符合最左匹配的情况:

图片.png

可以看到type是ref,即一般使用了非主键索引的情况。

不符合最左匹配的情况:

图片.png

可以看到type 是index,代表一种全盘扫描。说明索引没有生效