11. 知道什么是回表查询嘛 ?
当我们为一张表的name
字段建立了索引 , 执行如下查询语句 :
select name,age from user where name='Alice'
那么获取到数据的过程为 :
- 根据
name='Alice'
查找索引树 , 定位到匹配数据的主键值为id=18
2.根据id=18
到主索引获取数据记录 (回表查询)
先定位主键值,再定位行记录就是所谓的回表查询,它的性能较扫一遍索引树低
当我们为一张表的name
字段建立了索引 , 执行如下查询语句 :
select name,age from user where name='Alice'
那么获取到数据的过程为 :
name='Alice'
查找索引树 , 定位到匹配数据的主键值为id=18
2.根据id=18
到主索引获取数据记录 (回表查询)
先定位主键值,再定位行记录就是所谓的回表查询,它的性能较扫一遍索引树低