zoukankan      html  css  js  c++  java
  • PHP 高效分布代码转的

    在《efficient pagination using mysql》中提出的clue方式。

    利用clue方法,给翻页提供一些线索,比如还是SELECT * FROM `csdn` order by id desc,按id降序分页,每页2000条,当前是第50页,当前页条目id最大的是102000,最小的是100000。如果我们只提供上一页、下一页这样的跳转(不提供到第N页的跳转)。

    那么在处理上一页的时候SQL语句可以是:
    SELECT * FROM `csdn` WHERE id<=102000 ORDER BY id DESC LIMIT 2000; #上一页
    耗时:0.015ms

    处理下一页的时候SQL语句可以是:
    SELECT * FROM `csdn` WHERE id>102000 ORDER BY id ASC LIMIT 2000; #下一页
    耗时:0.015ms

    这样,不管翻多少页,每次查询只扫描20行。效率大大提高了!

    但是,这样分页的缺点是只能提供上一页、下一页的链接形式。

  • 相关阅读:
    Redis Redis-Cell
    Redis Bloom Filter
    Redis HyperLogLog
    TCC、XA 、DTP区别
    MySQL索引最左匹配原则
    什么原因导致统计信息失效--SQL
    光标移动大法---落落大神
    mongo 导入导出
    oracle 10053 事件
    卸载12C
  • 原文地址:https://www.cnblogs.com/jackluo/p/4201710.html
Copyright © 2011-2022 走看看