码迷,mamicode.com
首页 > 其他好文 > 详细

limit偏移量越大,查询越慢的实验

时间:2018-10-27 19:56:28      阅读:226      评论:0      收藏:0      [点我收藏+]

标签:ffffff   shadow   alt   sele   查看   select   dbf   分享图片   process   

常见分页查询,越到后面越慢,这是由于offset造成的,offset越大,查询越慢,因为所以加载的页越多,扫描也就越费时。

实验:

sbtest1表,100w数据量,主键id,辅助非唯一索引k_1
select id from sbtest.sbtest1 where id>="200000" order by id limit 100000,10;
技术分享图片
select id from sbtest.sbtest1 where id>="200000" order by id limit 700000,10;
技术分享图片
两条语句的执行计划是一样的,都是使用主键索引,但执行时间越差了0.76秒

但是通过Innodb_buffer_page查看,索引使用的页情况
Offset 100000时,主键加载了3720个页
技术分享图片
Offset700000时,主键加载了10971个页
技术分享图片
也就是说,offset越大,索引扫描页越多,所以导致变慢。

limit偏移量越大,查询越慢的实验

标签:ffffff   shadow   alt   sele   查看   select   dbf   分享图片   process   

原文地址:http://blog.51cto.com/8370646/2309696

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!