首页 > 数据库 > 其他综合 >

优化评论分页查询-梁十八的博客-51CTO博客

2019-05-07

possible_keys、key、key_len都为null,可见在表上是没有可用索引的计算区分度,越接近1区分度越好,应该放到联合索引的左侧建好联合索引之后的explain:翻页越多,速度越慢,进一步优化:优化的前提:comment_i

image.png

possible_keys、key、key_len都为null,可见在表上是没有可用索引的

计算区分度,越接近1区分度越好,应该放到联合索引的左侧

建好联合索引之后的explain:

image.png




翻页越多,速度越慢,进一步优化:

image.png

优化的前提:comment_id是商品评论表的主键,且有覆盖索引

原理:

????????利用覆盖索引,取出主键comment_id,再进行排序,取出所需数据,之后再同评论表通过主键来排序,取出其他字段。这种方式的数据开销是:索引的io + 索引分页后的结果,也就是这15行数据对应表的io,比优化前的io节省很多。优点在于:每次翻页消耗的资源和时间基本相同。

适应场景:

????????当查询和排序字段,也就是where子句和order by子句涉及的字段有对应覆盖索引的情况下。并且中间结果集很大的时候也适应这种情况

相关文章
最新文章
热点推荐