参考:
https://blog.csdn.net/yalishadaa/article/details/78332632
https://blog.csdn.net/u014653854/article/details/80620858
1、联合索引是由多个字段组成的索引。
2、查询时使用联合索引的一个字段,如果这个字段在联合索引中所有字段的第一个,那就会用到索引,否则就无法使用到索引。
3、联合索引IDX(字段A,字段B,字段C,字段D),当仅使用字段A查询时,索引IDX就会使用到;如果仅使用字段B或字段C或字段D查询,则索引IDX都不会用到。
这个规则在oracle和mysql数据库中均成立。
如果你经常要用到多个字段的多条件查询,可以考虑建立联合索引,一般是除第一个字段外的其它字段不经常用于条件筛选情况,比如说a,b 两个字段,如果你经常用a条件或者a+b条件去查询,而很少单独用b条件查询,那么可以建立a,b的联合索引。如果a和b都要分别经常独立的被用作查询条件,那还是建立多个单列索引。
综上:
#1.使用联合索引包含了第一个索引列,索引有效,不包含第一个,则索引失效!
#2.单值索引,组合索引,where条件后面使用or 都会造成索引失效的情况,尤其是使用单值索引,使用or 的效率最低下,交换索引列的位置并不会产生影响。
版权属于:sunjianhua
本文链接:https://sunjianhua.cn/archives/mysql-index-tips.html
转载时须注明出处及本声明,如果不小心侵犯了您的权益,请联系邮箱:NTA2MTkzNjQ1QHFxLmNvbQ==