mysql 分页查询 多条件_mysql 千万级数据 分页优化 条件是某个日期

mysql 千万级数据 分页优化 条件是某个日期

c585fb0caf6730d176f6ea23dcb39d8d.png

一般刚开始学SQL的时候,会这样写 复制代码代码如下: SELECT * FROM table ORDER BY id LIMIT 1000, 10; 但在数到百万级的时候,这样写会慢死 复制代码代码如下: SELECT * FROM table ORDER BY id LIMIT 1000000, 10; 也许耗费几十秒 网上很多优化的方法是这样的 复制代码代码如下: SELECT * FROM table WHERE id >= (SELECT id FROM table LIMIT 1000000, 1) LIMIT 10; 是的,速度提升到0.x秒了,看样子还行了 可是,还不是完美的! 以下这句才是完美的! 复制代码代码如下: SELECT * FROM table WHERE id BETWEEN 1000000 AND 1000010; 比上面那句,还要再快5至10倍 另外,如果需要查询 id 不是连续的一段,最佳的方法就是先找出 id ,然后用 in 查询 复制代码代码如下: SELECT * FROM table WHERE id IN(10000, 100000, 1000000...);

mysql分页技术 中用到的关键字

fb75eab42f1cfb9a339a6c5e37f49698.png

mysql数据库分页用limit字它跟两数:startIndex和pageSize。

如:请求第2页页10条数据,departmentId代表部门编,以科研部的员工为例,假设其部门编码为1001

Java code:

int cpage = 2;

int pageSize = 10;

int startIndex = (cpage-1)*pageSize;

String sql = "select * from deployees from departmentid='1001' limit "+startIndex+","+pageSize;

如何优化Mysql千万级快速分页

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值