常考点,热点,非常好用的点。
一方面在八股文面试中,初中级的岗位会经常考察覆盖索引的基本定义和用法;另外一方面来说,覆盖索引也是常见的性能优化的手段。大部分时候,你可以在自己的性能优化方案里面加上覆盖索引的内容,作为索引优化方面的一个案例,以增强说服力。
当然,覆盖索引本身并不是一个很高级的内容,所以在高级岗位面试中效果不太好。
覆盖索引的基本定义可以参考 什么是覆盖索引? (mianshi.icu)。
覆盖索引一般都用在高频查询部分列的场景下,这里举几个例子:
你可以注意到,上面的例子,都是为了使用覆盖索引,而在“常见”的索引设计方案上增加了列。例如说一般情况下,order_sn 上创建一个唯一索引就可以了,但是为了加快 status 的查询,就在 order_sn 和 status 上创建了联合索引。