一、根据类型分为如下索引(17种)
B树索引 默认的索引类型,平衡树索引,适用于高基数(不同值的程度高)的列。除非有特殊原因需要使用不同的素引类型成功能,否则用正常的B树素引即可 唯一索引 B树索引的一种形式,用于强制执行列值的唯性。 经常与主键和唯键约束-起使用, 但也可以独立于约束而创建 反向键索引 B树索引的一种形式, 在索引有许多顺序插入的情况下,用于平衡I/O, 降序索引 B树索引的一种形式,在索引对应的列值按降序(默认的顺序是升序)排序时使用。反向键索引不能指定降序,如果是位图索引,那么Oracle忽略降序。 索引组织表 当主键包含大多数的列值时很有效率。访问这种索引就像访问表一样。 数据存储在个类似B树的结构中 键压缩索引 适用于前导列经常重复的组合索引,压缩叶块条目。此功能适用于B树索引或IOT (索引组织表)索引 位图索引 对于包含低基数列以及在SQL语句的HERE子句包中使用许多AND或OR运算符的数据仓库环境,非常适合使用这种索引。位困索引不适合经常更新行的在线事务处理(OLTP)数据库。无法创建唯一的位图索引 位图连接索引 在数据仓库环境中,对于利用连接事实表和维表的星型模式结构的查询非常有用适用于应用了SQL函数的列。可与B树索引类型或位图索引类型结合使用 基于函数的索引 适用于应用了SQL函数的列。可与B树索引类型或位图索引类型结合使用。 虚拟列索引 在表的虚拟列上定义的索引,适用于应用了SQL函数的列,可用来替代基于函数的索引 虚拟索引 允许通过CREATE INDEX的NOSEGMENT子句创建没有物理段或区的索引,在调优SOL时有用,因无需建立物理索引从而避免消耗资源。任何类型的索引都可以创建为虚拟的 不可见索引 该索引对查询优化器是不可见的。然而,在表中的数据被修改的同时也维护索引结构。用于在使索引对应用程序可见之前测试它。任何类型的索引都可以创建为不可见的 全局分区索引 跨分区表的所有分区或常规表的全局索引。它的类型可以是B树索引,而不能是位图索引 本地分区索引 本地索引基于分区表的单个分区。它的类型可以是B树索引或位图索引 域 索 引 用于具体的应用程序或程序模块 B树聚簇索引 用于聚簇表 散列聚簇索引 用于散列聚簇
二、是否分区索引
普通索引:全局非分区索引
分区索引:本地索引和全局分区索引