limit优化

limit优化

limit 100000,20的意思是扫描满足条件的100020行,扔掉前面的100000行,返回最后20行。所以偏移量越大,查询性能越差。

举例:

默认全表扫描

在这里插入图片描述

  • 加入order by field, field必须有索引

在这里插入图片描述
​ type变成了index

  • 记录上次的最大id,用id做范围查询

    在这里插入图片描述

  • 嵌套查询也是一种方法

    在这里插入图片描述

总结:

  1. 先找出第一条符合条件的id,然后用id>xxx这种方法

  2. 引入order by使其走索引

  3. 反向查找优化法

    当偏移量超过一半的时候,反着查,order by field desc

     正向查找: (当前页 – 1) * 页长度
    
     反向查找: 总记录 – 当前页 * 页长度
    
  4. limit限制

    超过某个偏移量,不返回数据了

实时内容请关注微信公众号,公众号与博客同时更新:程序员星星
在这里插入图片描述

©️2020 CSDN 皮肤主题: 编程工作室 设计师:CSDN官方博客 返回首页