暗中观察

组合索引和单值索引使用时的注意点
参考: https://blog.csdn.net/yalishadaa/article/details/78...
扫描右侧二维码阅读全文
15
2018/08

组合索引和单值索引使用时的注意点

参考:
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 的效率最低下,交换索引列的位置并不会产生影响。

最后修改:2018 年 09 月 11 日 08 : 25 PM
如果觉得我的文章对你有用,请随意赞赏

发表评论