RSS
菜单

MySQL 回表是什么?怎么避免?

回表 = 通过二级索引找到主键后,再到聚簇索引(主键 B+ 树)取整行数据的过程(两次 B+ 树查找)。触发:查询列包含二级索引中没有的列。避免方式:① 覆盖索引(查询列都进索引);② 用主键直接查询(走聚簇索引无需回表);③ 联合索引设计覆盖高频查询。代价:回表是随机 IO(主键值不连续),性能开销明显。优化器会在回表成本高时放弃二级索引(选择全表扫描或主键索引),EXPLAIN 的 Extra 列显示 Using index(覆盖)时无回表。

下载推广海报

圈内讨论推广海报

《MySQL 回表是什么?怎么避免?》完整推广海报
一起交流

全部回复 0

分享经验,让问题更进一步

讨论,从你的观点开始

还没有回复,欢迎补充经验或分享不同的思路。