请教关于oracle索引的几个问题
我现在用的是oracle 9i
1.一个表建立多少个索引比较合适?比如说不大于5个
2.联合索引比单索引的效率高么?
3.compress 这个压缩 ,能起到什么作用?
4.上网上查资料时,都说oracle使用联合索引需要前导列,这个和版本有关系吗?
5.如果不需要前导列的话,reverse 这个反转 又起到什么作用呢?
我自己用一个单表对索引进行了一个简单的测试,结果如下:
1、多个单索引 一起使用
会分别调用各自的索引
2、单索引和无索引字段
会使用单索引
3、联合索引和无索引字段 (不出现单索引字段)
会使用联合索引 (联合索引字段 不用强调顺序 ,也就是不需要前导列,无索引字段还可以在联合索引字段之间)
4、单索引和联合索引一起使用
1)如果联合索引中字段全部出现 则使用联合索引 (联合索引字段 不用强调顺序)
2)如果联合索引中只有部分字段出现 则会使用单索引
5、联合索引和联合索引一起使用
1)如果其中一个联合索引中只有部分字段出现 则会使用另一个联合索引
2)如果两个都完全使用,或都不完全使用 会选择其中一个使用(不出现单索引字段,如果出现,会使用间单索引), 具体怎么选择的,不清楚????
说的不专业 大家凑合看, 希望指点小弟一下。 先谢谢啦。