星海

MySQL · 单选题 · 第 34 题

Java 后端开发面试 · 第 34 题

什么是覆盖索引?

  1. A一个索引覆盖了表中所有的数据行,没有遗漏
  2. B主键索引在 InnoDB 存储引擎里的另一种叫法
  3. C在同一个列上同时建了多个重复的索引
  4. D查询需要的列全部包含在某个索引里,不必回表

答案

D D. 查询需要的列全部包含在某个索引里,不必回表

解析

如果二级索引里已经有查询要的全部列,InnoDB 直接从索引返回结果,省掉按主键回表的随机 IO,EXPLAIN 的 Extra 列会显示 Using index。建联合索引时,把高频查询的返回列也包含进去,就是常见的优化手段。所有二级索引都天然包含主键列。

在线刷这套题:即时判分、错题本、闪卡复习,不用登录就能练。