`
y806839048
  • 浏览: 1107292 次
  • 性别: Icon_minigender_1
  • 来自: 上海
文章分类
社区版块
存档分类
最新评论

数据库查询中的回表

    博客分类:
  • sql
sql 
阅读更多

什么是回表?

 

简单来说就是数据库根据索引找到了指定的记录所在行后,还需要根据rowid再次到数据块里取数据的操作。

比如这样的执行计划,先索引扫描,再通过rowid去取索引中未能提供的数据,即为回表。

“回表”一般就是指执行计划里显示的“TABLE ACCESS BY INDEX ROWID”。

再例如,虽然只查询索引里的列,但是需要回表过滤掉其他行。

怎么避免回表?

 

将需要的字段放在索引中去。查询的时候就能避免回表。---聚簇索引

但是不要刻意去避免回表,那样代价太了。也不是将所有的字段都放在所有中

 

原文:https://blog.csdn.net/chy_0108/article/details/83615010 

 

分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics