虽然无法在森林树索引的 HASH ON 列上直接执行范围扫描,但可以在 HASH ON 列列表中未列出的列上执行范围扫描。要在 HASH ON 列列表中列出的列上执行范围扫描,您必须创建包含范围扫描相应列列表的其他
B 型树索引。
要为范围扫描创建索引:
-
创建具有至少一个未散列的列的森林树索引。
例如,指定:
CREATE INDEX idx1 on tab(c1,c2) HASH ON (c1) with 100 buckets;
您可以直接在列 c2 上执行范围扫描,但不能在 HASH ON 列列表中列出的列 c1 上执行。
-
要在 HASH ON 列列表中列出的列上执行范围扫描,请创建包含范围扫描相应列列表的其他 B 型树索引。这一额外的 B 型树索引可以具有与森林树索引相同的列列表,加上或减去一列。
例如,指定:
CREATE INDEX idx2 on tab(c1, c2, c3);