MYSQL逻辑架构

回表查询和覆盖索引

回表查询

聚集索引的叶子节点包含完整的行数据,而非聚集索引的叶子节点存储的是每行数据的辅助索引键 + 该行数据对应的聚集索引键(主键值)。

假设有张 user 表,包含 id(主键),name,age(普通索引)三列,有如下数据:

id    name    age
1    Jack        18
7    Alice        28
10    Bob            38
20    Carry        48CopyErrorOK!

画一个比较简单比较容易懂的图来看下聚集索引和辅助索引: