MST
星途 面试题库

面试题:MySQL中覆盖索引适用场景及如何创建

请阐述MySQL覆盖索引的适用场景,并说明在给定一个包含`id`(主键)、`name`、`age`、`email`字段的`users`表,若要针对`name`和`email`字段查询创建覆盖索引,SQL语句该如何写。
16.7万 热度难度
数据库MySQL

知识考点

AI 面试

面试题答案

一键面试

适用场景

  1. 减少回表操作:当查询所需的所有数据都能从索引中获取,无需再根据索引回表查询聚簇索引获取完整行数据时,使用覆盖索引可显著提升查询性能。例如在统计查询、某些简单的列表查询场景中。
  2. 提升查询性能:对于高并发的查询场景,减少磁盘I/O操作,通过覆盖索引直接从索引树中获取数据,能够提高系统的响应速度和吞吐量。

创建覆盖索引SQL语句

CREATE INDEX idx_name_email ON users (name, email);