SQL分页查询

SQL分页查询:

SQL分页查询_第1张图片

  • 背景

    ​ 在公司的系统中有一个平台是 做配置管理的 就是所谓的 CRUD 的平台,但是点击后进去到页面第一次看到的是一次查询的页面 (点击页面自动的触发查询的功能) 后面就可以你的CRUD的操作是给运营的同事来操作的,但是一般的是我们数据量比较的少的业务是之间查询出来所有的数据,直接返回给前端的让他自己做分页的,但是有一些数据量达到上万级别的时候,不能让他们乱搞了,必须要用到给我多加入两个参数了

  • 解决方法

    非常的简单的加入两个参数 (1) 页数 (2) 每页的查询的数量 (后端都有默认值防止不传)

  • service需要的处理

    处理方式非常的简单的 在sql 中进行抽取一下

    查询全部的数据 没有加入分页

SQL分页查询_第2张图片

加入分页的 这里特别需要注意的是:

分页的查询 第一个是页数,每页的数量 这里的页数需要处理一下有个公式 sql写入的页数 = (页数-1) * 每页的数量

SQL分页查询_第3张图片

  • sql 是如何处理的

    第一种

    SELECT * FROM test_user_info limit 0,4;

    第二种

    有时候 通过分页是可以解决 大多数的情况,但是我们可以预测到数据到哪一步,就是从哪里开始适合大量数据的表中, 我们稍微改一下SQL

    加入 启始的 id 开始 每次获取 4条数据

    SELECT * FROM test_user_info WHERE id > 32 limit 4;

    SQL分页查询_第4张图片

    ​ 还有 普通的查询的时候知道是一条数据的时候 在后面加入 limit 1 sql执行速度更快

    SQL分页查询_第5张图片

这是一个明显的对比了

[外链图片转存中…(img-wCJm8EZE-1583644134092)]

这是一个明显的对比了

SQL分页查询_第6张图片

你可能感兴趣的:(mysql,java)