位图索引
位图索引适用于低基数的列。
DML操作频繁的表不适合建立位图索引。
create bitmap index index_name on table_name(col1, col2, ...);
位图连接索引
位图连接索引在索引中存储两个表之间的连接结果。
create bitmap index index_name on table_nameA (table_nameB.col) from table_nameA, table_nameB where table_nameA.col = table_nameB.col;
基于函数的索引
基于函数的索引用其定义中的SQL函数或表达式创建
create index index_name on table_name(function_name(col));
基于函数的索引可以是B树索引、唯一索引或位图索引
虚拟列索引
在虚拟列上创建的索引
create index index_name on table_name (virtual_col_name);
虚拟索引
永远不会被使用的索引,并且不会将任何区分配给它的索引
create index index_name on table_name(col_name) nosegment;
不可见索引
查询语句检索数据时不使用该索引。当对基础表插入、更新或删除记录时,数据库仍然在维护该索引结构。
create index index_name on table_name(col1, col2, ...) invisible;
全局分区索引
全局分区索引时使用分区策略的索引,但这种分区并不映射到基础表的段。可以为常规表或分区表建立全局分区索引。全局分区索引实现为B树类型,并且可以定义为唯一索引。
create index index_name on table_name (col) global partition by range (col) (partition partition_name1 values less than value1, partition partition_name2 values less than value2, ... partition partition_max values less than maxvalue);
本地分区索引
本地分区索引必须建立在分区表上。这种索引与其基础表遵循相同的分区策略
create index index_name on table_name (partition_col1) local;