Skip to content

索引的数据结构是怎么样的 ​

题目 ​

MySQL 索引的数据结构是怎么样的?

参考答案 ​

主流还是 B+Tree。对于 InnoDB:

  • 聚簇索引叶子节点存整行数据
  • 二级索引叶子节点存主键值

所以通过二级索引查全字段时,常常需要回表。

回答展开 ​

  • SQL 和索引题的关键是解释为什么快、为什么慢,而不是只背优化口诀。
  • 回答时最好结合执行计划、扫描行数、回表次数和写入成本。
  • 真正有经验的回答通常会强调以执行计划和真实数据分布为准。

实际场景 ​

比如后台订单列表查询慢,通常要先看执行计划,再判断是不是没走索引、回表太多或深分页导致扫描成本过高。

努力工作 享受生活