您的位置:首页 > 其它

B树索引+B树索引逻辑结构图+B树索引是怎么搜索数据+创建B树索引

2017-05-28 00:41 387 查看
B树索引

1创建索引不指定unique ,btimap 那么表示创建的索引是B树索引.

2B树索引的组织结构类似一颗树,主要数据集中在叶子节点上,叶子节点包含索引列的值和记录行对应的物理地址rowid;

3默认会为主键创建一个B树索引

4无法给包含索引的创建索引.

B树索引逻辑结构图



B树索引是怎么搜索数据(只要4个步骤)

举例索引值为1020的实际数据

1)根节点

1020与 1001 1013比较,1020在1013后面(右子节点)

2)右子节点(1013 1017 1021)比较,1020在1017-1021之间(中子节点)

3)中子节点(1017,1018,1019,1020)比较,找到叶节点1020

4)叶节点1020中找到对应物理地址rowid,获取实际的数据。

查找其他数据也是4个步骤,B数索引保证无论查找哪个数据,所需要的步骤都是一样的,B代表平衡的意思.

创建B树索引

1用户在自己模式中创建索引,需要create index系统权限

2用户在其他用户模式中创建索引,需要create any index系统权限

3可以创建B树索引的类型

1)普通索引:在on后面指定索引基于的表名和列名,还可以为索引指定存储索引的表空间.

举例

/普通索引/

create index sal_index on scott.emp(sal)

tablespace MYSPACE;



2)唯一索引:保证索引列上不会有重复的值(比如1020)

举例

/唯一索引/

create unique index ename_index on scott.emp(ename)

tablespace MYSPACE;



3)复合索引:基于表中多个字段的索引

举例



/复合索引/

create index job_mgr_index on scott.emp(job,mgr)

tablespace MYSPACE;
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: