MySQL的索引结构是什么样的?聚簇索引和非聚簇索引又是什么?


二叉树-》AVL树-》红黑树-》B-树-》B+树
二叉树:每个节点最多只有两个子节点,左边的子节点都比当前节点小,右边的子节点都比当前节点大。
AVL树:树中任意节点的两个子树的高度差最大为1
红黑树:1、每个节点都是红色或者黑色。2根节点是黑色。3每个叶子节点都是黑色的空节点。
4红色节点的父子节点都必
须是褐色。5从任一节点到其每个叶子节点的所有路径都包含相同的黑色节点。
B-树:1、B-树的每个非叶子节点的子节点个数都不会超过D(这个D就是B-树的阶)2、所有的叶子节点都在同一层。3.所有节点关键字都是按照递增顺序排列。
B+树:1、非叶子节点不存储数据,只进行数据索引。2、所有数据都存储在叶子节点当中。3、每个叶子节点都存有相邻叶子节点的指针。4、叶子节点按照本身关键字从小到大排序。
 

MySQL的覆盖索引和回表
如果只需要在一颗索引树上就可以获取SQL所需要的所有列,就不需要再回表查询,这样查询速度就可以更快。
实现索引覆盖最简单的方式就是将要查询的字段,全部建立到联合索引当中。
user (PK id , name ,sex)
select count(name) from user; ->在name字段上建立一个索引。
select id , name ,sex from user; ->将name上的索引升级成为(name,sex)的联合索引
 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值