数据库:MySQL数据库
因为初次使用mybatis-plus的分页查询,有点不太不习惯,于是决定自己写个分页查询。
mysql中的分页查询语句,是使用limit来分页的:
select * from tablename limit a,b;//这句话的意思是从表tablename中查询,从第a+1条开始,共查询b条数据。
那么在这里,a和b的含义就要了解明白了,要不然就容易犯我的错(我刚开始理解的意思是,从a页开始,查询b条数据)。
概念清晰的话,涉及到分页,就需要了解几个计算公式了:
//总记录数=查询符合条件的总数 SELECT COUNT(1) FROM tablename WHERE 条件;
Integer count ;
//每页记录数=每页查询的条数,一般都是前端传过来的
Integer pageSize ;
//当前页数=当前页数,一般都是前端传过来的想要查询的哪页
Integer currPage ;
//总页数= (总记录数 + 每页记录数 - 1)/每页记录数
Integer totalPage = (count + pageSize - 1) / pageSize;
明白上面的几个概念之后,可以进行操作了。
请注意,sql语句不能写成:select * from tablename limit currPage ,pageSize ;//这是错误的
应该计算一下select * from tablename limit a,b;语句中的a(一定要注意,a不代表第几页,而是代表从a&#