在森林树索引上执行范围扫描

虽然无法在森林树索引的 HASH ON 列上直接执行范围扫描,但可以在 HASH ON 列列表中未列出的列上执行范围扫描。要在 HASH ON 列列表中列出的列上执行范围扫描,您必须创建包含范围扫描相应列列表的其他 B 型树索引。

要为范围扫描创建索引:

  1. 创建具有至少一个未散列的列的森林树索引。

    例如,指定:

    CREATE INDEX idx1 on tab(c1,c2) HASH ON (c1) with 100 buckets;

    您可以直接在列 c2 上执行范围扫描,但不能在 HASH ON 列列表中列出的列 c1 上执行。

  2. 要在 HASH ON 列列表中列出的列上执行范围扫描,请创建包含范围扫描相应列列表的其他 B 型树索引。这一额外的 B 型树索引可以具有与森林树索引相同的列列表,加上或减去一列。

    例如,指定:

    CREATE INDEX idx2 on tab(c1, c2, c3);