透彻理解联合索引(a,b,c)

用到索引的有a,ab,abc,ac 因为优化器会自动调整and前后的顺序,所以ba,cba,bca,ca都会用到索引,其他的都不会用到该索引。ac这一组仅仅是a用到索引。

组合索引 有“最左前缀”原则,遇到范围查询(>、<、between、like)就会停止匹配。为什么是“最左匹配”原则,可以通过数据结构来看:

联合索引是一颗b+树(a,b)


联合索引(a,b).png

a按顺序排列,b在a确定的情况下按顺序排列。所以必须基于a来查找后面的b字段,否则b就是无序的,就用不到索引了。

你可能感兴趣的:(透彻理解联合索引(a,b,c))