深入学习索引的作用,索引如何应用

索引定义

索引是为了快速检索和定位数据行而创建的一种数据结构

创建索引的语法格式:

CREATE [OR REPLACE] [CLUSTER|NOT PARTIAL][UNIQUE | BITMAP| SPATIAL] INDEX [IF NOT EXISTS] <索引名>

ON [<模式名>.]<表名>(<索引列定义>{,<索引列定义>}) [GLOBAL][<PARTITION子句>][<表空间子句>][<STORAGE子句>] [NOSORT] [ONLINE] [REVERSE] [UNUSABLE] [<PARALLEL项>];

<索引列定义>::= <索引列表达式>[ASC|DESC]

<表空间子句>::= TABLESPACE <表空间名>

<STORAGE子句>::=<STORAGE子句1>|<STORAGE子句2>

<STORAGE子句1>::= STORAGE(<STORAGE1项> {,<STORAGE1项>})

<STORAGE1项> ::=

[INITIAL <初始簇数目>] |

[NEXT <下次分配簇数目>] |

[MINEXTENTS <最小保留簇数目>] |

[ON <表空间名>] |

[FILLFACTOR <填充比例>]|

[BRANCH <BRANCH数>]|

[BRANCH (<BRANCH数>, <NOBRANCH数>)]|

[NOBRANCH ]|

[CLUSTERBTR]|

[SECTION (<区数>)]|

[STAT NONE]

<STORAGE子句2>::= STORAGE(<STORAGE2项> {,<STORAGE2项>})

<STORAGE2项> ::= [ON <表空间名>]|[STAT NONE]

<PARALLEL项> ::=

NOPARALLEL |

PARALLEL [<并行数>]

<PARTITION子句>

索引分类

物理存储角度进行分类,可分为聚集索引和非聚集索引。

聚集索引(又称为一级索引、主索引):聚集索引就是按照聚集索引键构造一棵 B+ 树,表数据存储在 B+ 树叶子节点上,通过定位索引可直接在 B+ 树中找到数据。每一个表有且只有一个聚集索引。

非聚集索引(又称为二级索引、辅助索引):将二级索引列和聚集索引列共同存储在 B+ 树叶子节点上。如果查找非聚集索引键值或聚集索引键值可直接在 B+ 树中找到;如果查找索引键值以外的数据,则需要回到一级索引中进行查找。每一个表可以有多个非聚集索引。

从索引功能角度进行分类,可分为唯一索引、函数索引、位图索引、位图连接索引、全文索引、空间索引、数组索引、普通索引。

唯一索引:索引数据根据索引键唯一;

函数索引:包含函数/表达式的预先计算的值;

位图索引:对低基数的列创建位图索引;

位图连接索引:针对两个或者多个表连接的位图索引,主要用于数据仓库中;

全文索引:在表的文本列上而建的索引。具体内容请参考第 18 章;

空间索引:在空间数据上创建的索引,专用于 DMGEO 包中;

数组索引:在一个只包含单个数组成员的对象列上创建的索引;

普通索引:除了唯一索引、函数索引、位图索引、位图连接索引、全文索引、空间索引、数组索引以外的索引,均为普通索引

索引管理

创建聚集索引

create cluster index clu_emp_sex on emp(sex);

explain select * from emp where sex=‘woman’;

​​​​​​​创建唯一索引

create unique index uni_emp_name on emp(name);

explain select * from emp where name=‘zhangsan’;

​​​​​​​创建位图索引

位图索引与聚集索引不能构建在同一表上

create bitmap index btm_emp_address on emp(address);

explain select * from emp where address=‘wuhan’;

​​​​​​​删除索引

drop index index_name;

达梦数据库 - 新一代大型通用关系型数据库 | 达梦在线服务平台

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值