如果不同表中两个想同等级的索引将被引用, from子句中表的顺序将决定哪个会被率先使用. from子句中最后的表的索引将有最高的优先级.
如果相同表中两个想同等级的索引将被引用, where子句中最先被引用的索引将有最高的优先级.
举例:
deptno上有一个非唯一性索引,emp_cat也有一个非唯一性索引.
select ename,
from emp
where dept_no = 20
and emp_cat = ‘a’;
这里,deptno索引将被最先检索,然后同emp_cat索引检索出的记录进行合并. 执行路径如下:
table access by rowid on emp
and-equal
index range scan on dept_idx
index range scan on cat_idx