索引--基于Oracle scott用户

只对索引做一个简单的介绍

概念

索引是数据库中用于存放表中每一条记录的位置的一种对象,主要用于加快对于表的查询操作

在创建索引时,oracle首先对要建立索引的字段进行排序。然后将排序好的字段值和对应记录的ROWID存储在索引中,此时程索引字段和ROWID的组合为索引条目。

索引创建之后,先在索引中对字段进行快速搜索(因为字段经过排序,所以速度很快)。找到符合条件的字段的ROWID,再根据ROWID到表中找到相应的记录

再ORACLE中,可以创建多种类型的索引,常见的索引类型由B树索引位图索引、簇索引、散列簇索引、反序索引和位图连接索引。

基数:某个字段u你可能拥有的不重复值的个数,位图索引适用于基数小的字段,B树索引适用于高基数的字段,尤其是具有primary key约束和unique约束的

索引可以自动创建,也可以手动创建,如果在表的一个字段或者几个字段上建立了主键约束或者唯一约束,那么数据库的服务器将自动在这些字段上建立唯一索引,这时索引的名字和约束的名字相同。

创建索引

1.创建B树索引

B树索引是oracle最常见的一种索引,使用create index语句默认创建B树索引
B树使用平衡的m路搜索树算法,即B树算法,来创建索引,在B树的叶子节点上存储了索引字段的值和ROWID

create index ename_index
on emp (ename);

2.创建位图索引

位图索引不存储ROWID值,也不存储键值,一般在包含少量不同值的字段上创建。

create bitmap index  deptno_inex
on emp(deptno);

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值