【oracle】索引 index
2017-03-06 21:51
225 查看
1.为什么使用索引
索引在查询的时候被使用,使查找速度更快。索引被创建在 表和视图上,表或者视图上的索引 就像 书上的目录一样。如果没有创建索引,搜索引擎会 检查 表中所有的 记录。
索引能够提高 Select 查询 和 Where 字句的速度,但是降低了包含 Update 语句 或 Insert 语句的处理速度。
2. 语法
创建普通索引
:列上的值是允许重复的
create index index_name on table_name (column name)
创建唯一索引
:列上的值不允许重复
create unique index index_name on table_name (column_name)
创建聚集索引:
CREATE INDEX index_name on table_name (column1, column2);
创建位图索引:
CREATE BITMAP INDEX index_name ...
哪些地方要创建索引:
在经常需要搜索的列上,可以加快搜索的速度;
在作为主键的列上,强制该列的唯一性和组织表中数据的排列结构;
在经常用在连接的列上,这些列主要是一些外键,可以加快连接的速度;
在经常需要根据范围进行搜索的列上创建索引,因为索引已经排序,其指定的范围是连续的;
在经常需要排序的列上创建索引,因为索引已经排序,这样查询可以利用索引的排序,加快排序查询时间;
在经常使用在WHERE子句中的列上面创建索引,加快条件的判断速度。
哪些地方不适合创建索引:
小的数据表不应当使用索引;
需要频繁进行大批量的更新或者插入操作的表;
如果列中包含大数或者 NULL 值,不宜创建索引;
频繁操作的列不宜创建索引。
参看 oracle 官方文档
相关文章推荐
- 【Oracle学习】之 索引(index)
- oracle:索引操作,index
- oracle index(索引)
- Oracle indexclustering factor 索引聚簇因子
- Oracle技术之使用Index提示强制使用索引
- Oracle 唯一 约束(unique constraint) 与 索引(index) 关系说明
- oracle hint 强制索引 /*+INDEX(TABLE INDEX_NAME)*/ 注意别名
- oracle随笔-Index (B*树索引-2)
- Oracle构建索引index后table的10046数据块读取测试
- 20180331:Oracle中的视图(view)、索引(index)、约束(constraint)、序列(sequence)
- Oracle Index 索引介绍(SQL)
- oracle-数据库的索引-index-详解
- 索引虚拟oracle virtual index
- Oracle 11g新特性invisible index(不可见的索引)
- Oracle:跳跃式索引(Skip Scan Index)浅析
- oracle 索引(index)
- ORACLE虚拟索引(Virtual Index)
- Oracle笔记 之 索引(index)
- oracle INDEX索引性能测试
- Oracle 唯一 约束(unique constraint) 与 索引(index) 关系说明