回表查询是什么?如何避免
当我们执行SELECT email, age FROM user WHERE username = 'alice'的时候,数据库会使用username的索引查询到对应的数据行并获取到主键,但是username的索引中并不包含email和age字段,因此数据库就需要再根据主键把这两个值查出来,影响性能。为了避免回表查询,我们可以创建一个复合索引包括查询所需的所有数据列。回表查询就是使用索引后,还需要再次使用主键查找需要的数据列。id:用户的唯一标识符(主键)email:用户的电子邮件地址。
原创
2024-04-05 10:10:55 ·
790 阅读 ·
0 评论