请在 下方输入 要搜索的题目:

回表是什么

回表是什么

发布时间:2025-01-12 17:01:59
推荐参考答案 ( 由 快搜搜题库 官方老师解答 )
联系客服
答案:Mysql回表指的是在InnoDB存储引擎下,二级索引查询到的索引列,如果需要查找所有列的数据,则需要到主键索引里面去取出数据。这个过程就称为回表。简单来说,回表就是MySQL要先查询到主键索引,然后再用主键索引定位到数据如果一直使用select 查询返回所有字段值,很容易就会造成回表查询(除非是根据主键查询,此时只会扫描聚集索引)。表tbl有a,b,c三个字段,其中 a是主键,b上建了索引,然后编写sql语句SELECT *FROM tbl WHERE a=1这样不会产生回表,因为所有的数据在a的索引树中均能找到如果是SELECT* FROM tbl WHERE b=1这样就会产生回表,因为where条件是b字段,那么会去b的索引树里查找数据,但b的索引里面只有a,b两个字段的值,没有c,那么这个查询为了取到c字段,就要取出主键a的值,然后去a的索引树去找c字段的数据。查了两个索引树,就出现了回表操作
专业技术学习
专业技术学习
搜搜题库系统