哪位大侠赐教,oracle b-tree索引中,键值的作用是什么,还有,如何判断一个索引有几层呢,多谢

Select height,name,lf_rows,lf_blks,del_lf_rows from index_stats;

键值 不就是索引的值么 匹配查询用的哈.   几层可以看 xxx_indexes 的blevel

 

 

行标识符(rowid)和键值存储在一个平衡的树状结构的索引块中
当使用条件where 字段1=键值
那么oracle把拿着这个键值到索引叶块中找rowid,再通过rowid找到表中的数据。

哦,就比如说,一行数据的a列的一条记录值为'abc',那么在这个列上创建b-tree索引,那么键值就是abc对么,还说是abc+rowid?另外,分枝节点上的键值是用来做什么的。还有,查询索引层次是可以查出来,但是想深入了解下,是什么原因决定一个索引的层次的,这么多问题,为难大侠了哈

 

 

分枝节点的键值用有的,它是对应分枝指向叶块的rowid的。
决定索引的层次与表的大小有关,与索块的大小有关,与索引块的PCTFree有关。。。。

posted @ 2021-06-28 10:07  shu'sblog  阅读(110)  评论(0编辑  收藏  举报