首页 >

mysql查询回表什么意思 |mysql int 对应java

linux移动mysql,mysql怎样进行优化,suse12 装mysql,mysql 字段自增 跳跃,mysql脚本怎么导入,mysql int 对应javamysql查询回表什么意思 |mysql int 对应java

什么是回表?回表是指 MySQL 优化器使用了覆盖索引来满足一个查询时,但查询的需要的所有字段都不在该索引中,因此,MySQL 需要再次回到这个对应的数据表中查找这些字段,这个过程就称为回表。

例如,如果大家执行以下语句:

SELECT name, age FROM users WHERE id = 100;

如果表 users 中有一个适合的索引,那么 MySQL 可能会决定使用覆盖索引来避免通过回表操作来获取数据。所谓覆盖索引就是指索引中的所有数据都能满足查询的条件和查询所需要的字段。

然而,大家的查询语句并不只是需要 id 字段,还需要姓名和年龄。因此,MySQL 需要回到 users 表中,查找 id 为 100 的用户,并返回他们的姓名和年龄。

回表的代价往往比直接从索引中获取数据的代价更高,因为 MySQL 必须访问并读取更多的数据块(block)来恢复需要的列。这也是为什么大家在设计数据库时应该尽可能使用含有所有需要查询列的索引。除此之外,限制查询所需要返回的行和列的数量,以降低查询操作的成本也是一个不错的决策。


mysql查询回表什么意思 |mysql int 对应java
  • mysql id注解 |php mysql 数据库连接类
  • mysql id注解 |php mysql 数据库连接类 | mysql id注解 |php mysql 数据库连接类 ...

    mysql查询回表什么意思 |mysql int 对应java
  • mysql 问号占位符究竟是什么? |mysql导出权限语句
  • mysql 问号占位符究竟是什么? |mysql导出权限语句 | mysql 问号占位符究竟是什么? |mysql导出权限语句 ...

    mysql查询回表什么意思 |mysql int 对应java
  • mysql 取相反数 |centosmysql卸载失败
  • mysql 取相反数 |centosmysql卸载失败 | mysql 取相反数 |centosmysql卸载失败 ...