oracle数据库索引种类,分别什么情况下使用

前端之家收集整理的这篇文章主要介绍了oracle数据库索引种类,分别什么情况下使用前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

oracle数据库索引种类,分别什么情况下使用

关于索引有些地方我不太明白1.oracle常用的都有哪几种索引,比如唯一索引之类的,sql语句都是怎么写?2.都在什么情况下适合用?3.最正常的语句create index name on.......建出来的是那种索引啊?4.表中主键和外键是不是自动给分配索引,自己就不用建了呢?谢谢
偶从这路过 | 浏览 7114 次 |举报
我有更好的答案
推荐于2017-10-01 07:46:12 最佳答案
1. b-tree索引
Oracle数据库中最常见的索引类型是b-tree索引,也就是B-树索引,以其同名的计算科学结构命名。CREATE
INDEX语句时,默认就是在创建b-tree索引。没有特别规定可用于任何情况。
2. 位图索引(bitmap index)
位图索引特定于该列只有几个枚举值的情况,比如性别字段,标示字段比如只有0和1的情况。
3. 基于函数的索引
比如经常对某个字段做查询的时候是带函数操作的,那么此时建一个函数索引就有价值了。
4. 分区索引和全局索引
这2个是用于分区表的时候。前者是分区内索引,后者是全表索引
5. 反向索引(REVERSE)
这个索引不常见,但是特定情况特别有效,比如一个varchar(5)位字段(员工编号)含值
(10001,10002,10033,10005,10016..)
这种情况默认索引分布过于密集,不能利用好服务器的并行
但是反向之后10001,20001,33001,50001,61001就有了一个很好的分布,能高效的利用好并行运算。
6.HASH索引
HASH索引可能是访问数据库中数据的最快方法,但它也有自身的缺点。集群键上不同值的数目必须在创建HASH集群之前就要知道。需要在创建HASH集群的时候指定这个值。使用HASH索引必须要使用HASH集群。

tj_angela

采纳率:47%来自团队:Oracle爱好者擅长:历史话题

其他回答

问题太多了吧?

逻辑上:
Single column 单列索引
Concatenated 多列索引
Unique唯一索引
NonUnique 非唯一索引
Function-based函数索引
Domain 域索引

物理上:
Partitioned 分区索引
NonPartitioned 非分区索引
B-tree:
Normal 正常型B树
Rever Key 反转型B树
Bitmap位图索引

create index name on:就是普通的 非唯一索引函数索引

主键会给分配索引,外键不会自动分配索引,需要自己创建
本回答被提问者和网友采纳
micro0369 | 推荐于2018-02-10 22:02:28
| 评论
8

猜你在找的Oracle相关文章