8.Oracle索引

什么是索引
 创建索引,可以提高数据的访问速度。

索引分类
 1.B树索引
 2.唯一索引和非唯一索引
 3.反向键索引
 4.位图索引

1.B树索引

如上图可以看出,B树索引的顺序
1.索引会将数据取一个中间点(中间点是数据库自己决定的),小于等于50的在左边,大于50的在右边,这样我们在查找数据的时候,索引会先判断你的数据是大于50或是小于50,从而在决定去左边的区段还是去右边的区段。
2.如果数据大于50则会来到左边的区段,然后继续查找,从而取出数据。
语法:CREATE   INDEX 索引名 ON  表名(列) ;

2.唯一索引和非唯一索引
 唯一索引:定义索引的列种,任何两行都没有重复值。在创建主键和唯一键的时候都会创建唯一索引
 非唯一索引:单个关键字可以有多个与其相关联的行。
 语法:CREATE UNIQUE  INDEX 索引名 ON  表名(列) ;

3.反向键索引
 反向键索引适用于在连续增长的列上。因为这种连续的数值,在创建索引的时候,可能会将数据都放在左边,或者右边,这样就是一头重一头轻了,为了避免这种情况,可以使用反向键索引。
反向键索引就是将数据反向,例如在数据库中有7789,反向后为9877。数据会不会出现冲突,数据库会自己处理。
 语法:CREATE  INDEX 索引名 ON  表名(列)  REVERSE;

4.位图索引
 位图索引有点在于,它最适用于低基数列(该列的值是有限的,不会无穷大),例如工种列。

表中有14条数据,所以显示14,如果有15条则会显示15。
以第一行ANALYST举例说明,在8、10、13行的地方显示1,说明这几行的工种是ANALYST。其他行显示0,说明其他行的工种不为ANALYST。
 语法:CREATE BITMAP INDEX 索引名 ON  表名(列)



删除索引
DROP  INDEX  索引名





  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值