oracle树状索引详解(图摘取《收获不止oracle》)

本文详细介绍了Oracle树状索引的特点,包括其高度较低、存储列值和结构有序的特性。通过索引结构图解释了索引由根块、茎块和叶子块组成,重点阐述了索引在查询过程中的作用,以及如何通过B+tree查找方式提高查询性能。此外,还讨论了索引高度、建立步骤和选择率高的字段作为索引的原因,并对比了Oracle与MySQL的B+tree索引结构差异。
摘要由CSDN通过智能技术生成

转载请注明原文地址 https://blog.csdn.net/qq_36758630/article/details/80900989

一.树状索引特点

1.高度较低

2.存储列值

3.结构有序

我们先看一下索引的结构,如图:

以上结构图说明索引是由 ROOT(根块),Branch(茎块)和Leaf(叶子块)三部分组成的,其中最底层的叶子块 主要存储了 key column value(索引列具体值),以及能具体定位到数据所在位置的rowid(此处rowid和查询时候用的rownum不是同一个概念,有兴趣可以百度rownum和rowid的区别)

注意点:索引块和数据块 需要区分,索引块也是占磁盘空间的

二.oracle索引查询

索引是如何快速检索到数据的呢?

举个书上的例子:select * from test where id = 12;
假如该test表共有10050条数据,而id=12仅返回一条数据,test表id字段建了一个索引,检索数据如下图:

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值