zoukankan      html  css  js  c++  java
  • sql分页优化

    索引优化

    注意查询的数据占总数据达到一定量的时候可能导致索引失效。可以用limit或者指定列缩小数据区域可以解决。

    以时间orderby排序的limit分页优化

    前提用order by分页

    limit分页在两三万左右时可以使用,超过十万条记录时要先查询出前n-1页的时间最大值max(date),以这个为开始时间。这里变动的参数只有下面的300000,这里为查询第30001页的数据。

    300000为pagerow*(page-1)得来。

    select * FROM
        tbl where sysDate >(select max(sysDate) from (select sysDate from tbl where sysDate>='2018-03-01 00:00:00' order by sysdate asc limit 0,300000) aa)
        AND sysDate <=  '2019-08-27 23:59:59' order by sysDate limit 0,10 

    获取分页总数

    一般的分页列表会要求返回记录总条数,这时候不是获取列表数据,不必要关联所有的表。当count百万级的数据时一点关联表就会很慢。解决方法是根据参数动态left join表。

  • 相关阅读:
    2020 11 21
    2020 11 20
    2020 11 19
    2020 11 18
    2020 11 17
    2020 11 16
    2020 11 15
    2020 11 14
    2020 11 14
    第五周学习进度报告
  • 原文地址:https://www.cnblogs.com/aeolian/p/11420030.html
Copyright © 2011-2022 走看看