覆盖索引

如果查询的字段都能在二级索引B+Tree 的叶子节点上查询到,不需要通过聚簇索引回表查询,这个过程就是覆盖索引。

相关问题

  • 题目1:一个表有多个字段,其中 name 是索引字段,其他非索引,id 拥有自增主键索引。
  • 题目2:一个表有2个字段,其中 name 是索引字段,id 拥有自增主键索引。

上面两张表,分别执行以下查询语句:

  • A:select * from s where name like “xxx”
  • B:select * from s where name like “xxx%”
  • C:select * from s where name like “%xxx”
  • D:select * from s where name like “%xxx%”

针对题目 1 和题目 2 的数据表,哪些触发索引查询,哪些没有?

答:题目1中AB语句用了name索引,CD索引失效;题目2中ABCD语句都用了name索引。题目2中CD情况产生了覆盖索引。