oracle数据库索引
1、b-tree索引
2、位图索引
3、函数索引
3、哈希索引:不适合模糊查询和范围查询(包括like,>,<,between……and等),由于 Hash 索引比较的是进行 Hash 运算之后的 Hash 值,所以它只能用于等值的过滤,不能用于基于范围的过滤,因为经过相应的Hash 算法处理之后的 Hash 值的大小关系,并不能保证和Hash运算前完全一样;
索引的创建语法:
CREATE UNIUQE | BITMAP INDEX
ON
(
TABLESPACE
STORAGE
LOGGING | NOLOGGING
COMPUTE STATISTICS
NOCOMPRESS | COMPRESS
NOSORT | REVERSE
PARTITION | GLOBAL PARTITION
相关说明
1) UNIQUE | BITMAP:指定UNIQUE为唯一值索引,BITMAP为位图索引,省略为B-Tree索引。
2)
3)TABLESPACE:指定存放索引的表空间(索引和原表不在一个表空间时效率更高)
4)STORAGE:可进一步设置表空间的存储参数
5)LOGGING | NOLOGGING:是否对索引产生重做日志(对大表尽量使用NOLOGGING来减少占用空间并提高效率)
6)COMPUTE STATISTICS:创建新索引时收集统计信息
7)NOCOMPRESS | COMPRESS
8)NOSORT | REVERSE:NOSORT表示与表中相同的顺序创建索引,REVERSE表示相反顺序存储索引值
9)PARTITION | NOPARTITION:可以在分区表和未分区表上对创建的索引进行分区