加入收藏 | 设为首页 | 会员中心 | 我要投稿 源码门户网 (https://www.92codes.com/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长学院 > MySql教程 > 正文

mysql排序 MySql(26)聚簇索引、二级索引与联合索引

发布时间:2022-10-25 15:07:38 所属栏目:MySql教程 来源:网络
导读: 文章目录
常见的索引
索引按照物理实现方式可以分为两种: 聚簇索引 和 非聚簇索引 我们也把非聚簇索引称为 二级索引或者 辅助索引。
聚簇索引
聚簇索引 并不是一种单独的索引类型,而是一

文章目录

常见的索引

索引按照物理实现方式可以分为两种: 聚簇索引 和 非聚簇索引 我们也把非聚簇索引称为 二级索引或者 辅助索引。

聚簇索引

聚簇索引 并不是一种单独的索引类型,而是一种 数据存储方式 (所有的用户记录都存储在了叶子节点),也就是所谓的 索引即数据,数据即索引

术语 “聚簇” 表示数据行和相邻的键值聚簇的存储在一起

特点

总结:

当记录中的主键,被层层存储这样的树就叫做 聚簇索引

使用记录主键值的大小进行记录和页的排序,包括三个方面的含义: B+树的 叶子结点 存储的是完整的用户记录。

我们把具有这两种特性的B+树称为 聚簇索引 ,所有完整的用户记录都被存放在这个 聚簇索引 的子节点处。

这种聚簇索引并不需要我们在MySQL语句中显式的使用 INDEX 语句去创建mysql排序, InnoDB存储引擎会 自动 的为我们创建。

优点

缺点

限制

二级索引(辅助索引,非聚簇索引)

如果我们使用别的列作为条件搜索怎么办呢?肯定不能从头到尾遍历。

我们可以 多建几颗B+树,不同的B+树种的数据采取不同的排序规则。如下图我们使用c2创建一颗树。

这个树存储的是 目标查询字段和主键值。当找到目标字段后会通过主键值从聚簇索引中查询具体记录

在这里插入图片描述

一个表 只能有一个聚簇索引 以为只能有一种排序存储方式,但可以有多个 非聚簇索引,也就是多个索引目录提供数据检索。

在这里插入图片描述

联合索引

我们也可以同时以多个列的大小作为排序规则,也就是同时为多个列建立索引。

在这里插入图片描述

同那么按照2字段来排序

(编辑:源码门户网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!