在上次优化分页查询的过程中搞错了limit分页的入参值 pageSize、pageNum 、currPage 导致出现了分页查询的问题
大数据量分页优化,应对PageHelper
这次我们攻坚limit 分页的参数值是如何处理的。
pageSize 页数 前端传过来的,默认10
currPage 当前页 前端传过来的,默认1
pageNum 页码 =(currPage-1)*10
limit m, n;
表示从跳过 m 条数据开始取n行数据
m 可选,表示跳过 m 条数据(默认为0)
n 必选,表示取几行数据
– 查询前 10 条数据
select * from table_name limit 10;
– 以上写法等同于
select * from table_name limit 0, 10;
– 查询 10-20 条数据
select * from table_name limit 10, 10;
当limit后面跟两个参数的时候,第一个数表示要跳过的数量,后一位表示要取的数量;例如 select* from article LIMIT 1,3 就是跳过1条数据,从第2条数据开始取,取3条数据,也就是取2,3,4三条数据。
当 limit后面跟一个参数的时候,该参数表示要取的数据的数量;例如 select* from article LIMIT 3 表示直接取前三条数据,类似sqlserver里的top语法。
limit m offset n
跳过 n 行数据,取 m 行数据
– 查询 10-20 条数据
select * from table_name limit 10 offset 10;
当 limit和offset组合使用的时候,limit后面只能有一个参数,表示要取的的数量,offset表示要跳过的数量 。例如 select * from article LIMIT 3 OFFSET 1 表示跳过1条数据,从第2条数据开始取,取3条数据,也就是取2,3,4三条数据