千家信息网

MySQL中回表和索引覆盖的示例分析

发表于:2026-11-04 作者:千家信息网编辑
千家信息网最后更新 2026年11月04日,这篇文章主要介绍MySQL中回表和索引覆盖的示例分析,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!索引类型聚簇索引: 叶子节点存储的是行记录,每个表必须要有至少一个聚簇索引。使
千家信息网最后更新 2026年11月04日MySQL中回表和索引覆盖的示例分析

这篇文章主要介绍MySQL中回表和索引覆盖的示例分析,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!

索引类型

聚簇索引: 叶子节点存储的是行记录,每个表必须要有至少一个聚簇索引。使用聚簇索引查询会很快,因为可以直接定位到行记录
普通索引:二级索引,除聚簇索引外的索引,即非聚簇索引。普通索引叶子节点存储的是主键(聚簇索引)的值。

聚簇索引递推规则:

  • 如果表设置了主键,则主键就是聚簇索引

  • 如果表没有主键,则会默认第一个NOT NULL,且唯一(UNIQUE)的列作为聚簇索引

  • 以上都没有,则会默认创建一个隐藏的row_id作为聚簇索引

索引结构

id 是主键,所以是聚簇索引,其叶子节点存储的是对应行记录的数据

非聚簇索引(Non-ClusteredIndex)

聚簇索引查询

如果查询条件为主键(聚簇索引),则只需扫描一次B+树即可通过聚簇索引定位到要查找的行记录数据。

如:select * from user where id = 1;

非聚簇索引查询

如果查询条件为普通索引(非聚簇索引),需要扫描两次B+树,第一次扫描通过普通索引定位到聚簇索引的值,然后第二次扫描通过聚簇索引的值定位到要查找的行记录数据。

如:select * from user where age = 30;

1. 先通过普通索引 age=30 定位到主键值 id=1
2. 再通过聚集索引 id=1 定位到行记录数据

先通过普通索引的值定位聚簇索引值,再通过聚簇索引的值定位行记录数据,需要扫描两次索引B+树,它的性能较扫一遍索引树更低。

索引覆盖

只需要在一棵索引树上就能获取SQL所需的所有列数据,无需回表,速度更快。

例如:select id,age from user where age = 10;

使用id,age,name查询:

select id,age,name, salary from user where age = 10;
explain分析:age是普通索引,但name列不在索引树上,所以通过age索引在查询到id和age的值后,需要进行回表再查询name的值。此时的Extra列的Using where表示进行了回表查询

Type: all, 表示全表扫描

增加表的联合索引:CREATE INDEX idx_user_name_age_salary ON mydb.user (name, age, salary);

explain分析:此时字段age和name是组合索引idx_age_name,查询的字段id、age、name的值刚刚都在索引树上,只需扫描一次组合索引B+树即可,这就是实现了索引覆盖,此时的Extra字段为Using index表示使用了索引覆盖。

分页查询(非利用索引):

添加索引之后,即可实现利用索引快速查找。

以上是"MySQL中回表和索引覆盖的示例分析"这篇文章的所有内容,感谢各位的阅读!希望分享的内容对大家有帮助,更多相关知识,欢迎关注行业资讯频道!

索引 查询 定位 普通 数据 分析 叶子 字段 节点 存储 示例 内容 只需 就是 条件 篇文章 组合 价值 兴趣 小伙 数据库的安全要保护哪些东西 数据库安全各自的含义是什么 生产安全数据库录入 数据库的安全性及管理 数据库安全策略包含哪些 海淀数据库安全审计系统 建立农村房屋安全信息数据库 易用的数据库客户端支持安全管理 连接数据库失败ssl安全错误 数据库的锁怎样保障安全 互联网科技名片 苏州找大状互联网科技有限公司 广州百单互联网科技有限公司 科技赋能下的互联网金融 互联网科技社 科技制造互联网公司 北京互联网络科技有限公司 美国互联网前沿科技 互联网科技股午盘股票涨跌 华中科技有哪些互联网大佬 黑科技闪耀互联网之光 互联网科技创新的路径 高科技互联网发展前景如何 科技大学互联网 互联网金融科技公司的优势 本届互联网大会上的黑科技 广州有谷有贝互联网科技有限公司 西安左小互联网科技有限公司 广西泛欧互联网科技有限公司 前海云享互联网科技 南京欣网互联网络科技 上海睿民互联网科技有限公司 互联网扶贫科技 青岛互联网科技公司 互联网金融科技委员会 创业天下互联网科技有限公司 迪庆互联网科技招生 济南有互联网科技公司吗 恒生互联网科技业指数调整周期 上海钢联属于互联网科技股吗
0