zoukankan      html  css  js  c++  java
  • mysql 大数据量分页处理

    select * from user where xx=1 limit 10,10

    你需要有ORDER BY 字段。 然后需要 (xx, orderCol) 的复合索引,再使用

    select * from user a inner join (select id from user where xx=1 order by id

    limit 10,10) b using(id)



    select * from emp where deptno =  20 limit 900000,3;


    ysql> alter table emp add index(deptno,empno);
    uery OK, 0 rows affected (2 min 17.45 sec)
    ecords: 0  Duplicates: 0  Warnings: 0

    ysql> select * from emp where deptno =  20 limit 900000,3;
    --------+--------+----------+-----+------------+---------+--------+--------+
     empno  | ename  | job      | mgr | hiredate   | sal     | comm   | deptno |
    --------+--------+----------+-----+------------+---------+--------+--------+
     898210 | YfDEig | SALESMAN |   1 | 2013-10-13 | 2000.00 | 400.00 |     20 |
     898211 | ecaTrf | SALESMAN |   1 | 2013-10-13 | 2000.00 | 400.00 |     20 |
     898212 | ydVsaZ | SALESMAN |   1 | 2013-10-13 | 2000.00 | 400.00 |     20 |
    --------+--------+----------+-----+------------+---------+--------+--------+
     rows in set (8.47 sec)

    ysql> select * from emp a inner join
       -> (select empno from emp where deptno=20
       ->  order by empno limit 900000,3) b using(empno);
    --------+--------+----------+-----+------------+---------+--------+--------+
     empno  | ename  | job      | mgr | hiredate   | sal     | comm   | deptno |
    --------+--------+----------+-----+------------+---------+--------+--------+
     898210 | cOOBpV | SALESMAN |   1 | 2013-10-10 | 2000.00 | 400.00 |    334 |
     898210 | YfDEig | SALESMAN |   1 | 2013-10-13 | 2000.00 | 400.00 |     20 |
     898211 | BINPKg | SALESMAN |   1 | 2013-10-10 | 2000.00 | 400.00 |    279 |
     898211 | ecaTrf | SALESMAN |   1 | 2013-10-13 | 2000.00 | 400.00 |     20 |
     898212 | pUDigi | SALESMAN |   1 | 2013-10-10 | 2000.00 | 400.00 |    207 |
     898212 | ydVsaZ | SALESMAN |   1 | 2013-10-13 | 2000.00 | 400.00 |     20 |
    --------+--------+----------+-----+------------+---------+--------+--------+
     rows in set (1.17 sec)

    ysql> select version();
    -----------+
     version() |
    -----------+
     5.6.10    |
    -----------+

  • 相关阅读:
    java--递归删除目录
    java--获取文件夹大小
    我经历中最重要的三位老师
    我的自我介绍
    如何判断多选框是否选中?
    控制总线 数据总线和地址总线是三根线吗
    单元格中间没有边框
    页面上插入bootstrap Glyphicons时遇到的问题
    浏览器回退键——重复提交
    【excel】excel转成csv乱码问题
  • 原文地址:https://www.cnblogs.com/kaka100/p/3366757.html
Copyright © 2011-2022 走看看