MySQL面试题--聚簇索引,非聚簇索引,回表查询

news/2024/10/17 18:30:36/

目录

概念

聚集索引选取规则:

面试回答

大纲

回答


概念

分类

含义

特点

聚集索引(Clustered Index)

将数据存储与索引放到了一块,索引结构的叶子节点保存了行数据

必须有,而且只有一个

二级索引(Secondary Index)

将数据与索引分开存储,索引结构的叶子节点关联的是对应的主键

可以存在多个

聚集索引选取规则:

如果存在主键,主键索引就是聚集索引。

如果不存在主键,将使用第一个唯一(UNIQUE)索引作为聚集索引。

如果表没有主键,或没有合适的唯一索引,则InnoDB会自动生成一个rowid作为隐藏的聚集索引。

 聚簇索引,存储的是行数据,而二级索引存储的是主键值

当使用非聚簇索引进行查询时,数据库首先在索引中找到满足查询条件的数据行的指针或引用,然后根据这些指针或引用去原始的数据表中找到相应的数据行。这个过程就是回表查询。

回表查询会增加额外的IO操作和时间开销,因为需要再次访问数据表。这尤其在大量数据的情况下或者频繁进行回表查询的场景下会影响查询性能。

为了避免频繁的回表查询,可以考虑使用覆盖索引的方式。覆盖索引是指在非聚簇索引中包含了所需的全部列,从而查询可以直接从索引中获取到所需的所有数据,避免了回表查询的开销,提高查询性能。

面试回答

大纲

什么是聚簇索引什么是非聚簇索引 ?

        聚簇索引(聚集索引):数据与索引放到一块,B+树的叶子节点保存了整行数据,有且只有一个

        非聚簇索引(二级索引):数据与索引分开存储,B+树的叶子节点保存对应的主键,可以有多个

知道什么是回表查询嘛 ?

        通过二级索引找到对应的主键值,到聚集索引中查找整行数据,这个过程就是回表

回答

面试官:什么是聚簇索引什么是非聚簇索引 ?

候选人: 聚簇索引主要是指数据与索引放到一块,B+树的叶子节点保存了整 行数据,有且只有一个,一般情况下主键在作为聚簇索引的 非聚簇索引值的是数据与索引分开存储,B+树的叶子节点保存对应的主键, 可以有多个,一般我们自己定义的索引都是非聚簇索引

面试官:知道什么是回表查询嘛 ?

候选人:嗯,其实跟刚才介绍的聚簇索引和非聚簇索引是有关系的,回表的 意思就是通过二级索引找到对应的主键值,然后再通过主键值找到聚集索引 中所对应的整行数据,这个过程就是回表查询

【备注:如果面试官直接问回表,则需要先介绍聚簇索引和非聚簇索引】


http://www.ppmy.cn/news/479514.html

相关文章

【运维知识进阶篇】zabbix5.0稳定版详解3(监控Nginx+PHP服务状态信息)

这篇文章继续给大家介绍zabbix监控,监控Nginx、PHP等服务,其实非常简单,难点在于如何去取这个值,包括监控业务,难点在于思路是否清晰,思维是否活跃,如何去进行判断是否有这个业务,并…

前端Vue自定义服务说明弹窗弹框 自下而上底部弹框

前端Vue自定义服务说明弹窗弹框 自下而上底部弹框&#xff0c; 请访问uni-app插件市场地址&#xff1a;https://ext.dcloud.net.cn/plugin?id13108 效果图如下&#xff1a; # cc-serviceDialog 自定义服务说明弹窗 自下而上 底部弹窗 #### 使用方法 使用方法 <!-- 服务…

深度学习代码中的希腊字母对应

代码中的希腊字母对应 论文和代码中的常见希腊字母读音&#xff0c;方便写代码时候的命名和文章中的参数对应起来 Α α&#xff1a;阿尔法 Alpha   Β β&#xff1a;贝塔 Beta   Γ γ&#xff1a;伽玛 Gamma   Δ δ&#xff1a;德尔塔 Delte Ε ε&#xff1a;艾…

Matlab画图,希腊字母怎么敲出来?

Matlab画图&#xff0c;希腊字母怎么敲出来&#xff1f; 在希腊字母开头加斜杠 “\” \alpha \beta \gamma \delta \mu \sigma希腊字母对应的英文及读音如下 α Α alpha /alpha/ h表示送气音&#xff0c;在古希腊语中尚没有音位/f/&#xff0c;所以/pha/的发音类似普通话…

达人篇:3.1.3)FAI 首件检验

本章目的&#xff1a;了解FAI。 1&#xff09;定义&#xff1a; FAI: First Article Inspection Report . 汉语译作:首件全尺寸检验报告. 2&#xff09;目的 制作FAI报告是为了检查成型后的产品尺寸是否在设计公差之内。 3&#xff09;步骤 4)FAI检测流程图&#xff1a; 5)FA…

路由器无服务器无响应是怎么回事啊,wifi服务器无响应怎么解决(图文)

摘 要 【导读】wifi服务器无响应怎么解决&#xff0c;下面就是路由器之家整理的网络知识百科&#xff0c;来看看吧&#xff01;大家好&#xff0c;我是191路由器网小编&#xff0c;上述问题将由我为大家讲解。wifi服务器无响应解决的方法是&#xff1a;1、请登录WIFI后 亲,以下…

概率论与数理统计学习笔记——6.4正态总体统计量的分布

标准正态分布函数Φ(x)很重要&#xff0c;所以用Φ(x)来代表这个函数&#xff0c;也就是说如果问你标准正态函数是多少&#xff0c;你就可以说是Φ(x)。 定理6.4.1 定理6.4.2 定理6.4.3 定理6.4.4 定理6.4.1: 定理6.4.2&#xff1a; 注意&#xff0c;样本方差不是均值方…