什么是覆盖索引 ?

走当前索引就足够,而无需回表就能找到所有数据,就叫覆盖索引。

比如 key1 上有索引。(它是一个普通的二级索引)。

那么select key1 from s1 where key1 = 'a'

这种就叫覆盖索引。

表现就是explain时, Extra 那里显示 using Index

为啥无需回表?因为b+树子节点上,存了该索引字段和主键。而此时找的就是该字段,所以无需回表使用聚簇索引,这种就叫覆盖索引。

如果写成select * from s1 where key1 = 'a'

这种就不是覆盖索引,因为其他字段没有索引,它需要回表(回去使用聚簇索引,再找一遍数据)。表现就是explain时,Extra 那里 是null。

相关推荐
一只专注api接口开发的技术猿10 分钟前
商品详情API的SLA保障体系:监控告警、异常检测与自动化修复
运维·数据库·架构·自动化
WarPigs10 分钟前
SQL Server笔记
服务器·数据库·sqlserver
爱丽_32 分钟前
事务隔离级别与一致性:从现象到实现(MVCC 与当前读)
数据库·mysql
会飞的大可35 分钟前
Elasticsearch:搜索引擎作为 NoSQL 数据库
数据库·elasticsearch·搜索引擎
LaughingZhu37 分钟前
Product Hunt 每日热榜 | 2026-04-03
数据库·人工智能·经验分享·神经网络·chatgpt·语音识别
Yushan Bai1 小时前
ORACLE EXADATA的CPU P1 主核心cores 瞬间临时无法被固件注册MCA控制器引起的重启问题分析
数据库·oracle
知识分享小能手1 小时前
MongoDB入门学习教程,从入门到精通,MongoDB从应用程序连接副本集(12)
数据库·学习·mongodb
你才是臭弟弟1 小时前
MongoDB Community Server (社区版)安装流程
数据库·mongodb
X-⃢_⃢-X1 小时前
四、索引的创建与设计原则
数据库·mysql
你才是臭弟弟1 小时前
MongoDB介绍
数据库·mongodb