一般我们学习分页,都是从基本的SQL语句分页开始的。
在分页的过程中,我们通常需要下面几个变量
当前页数:pageNum
每页的条数:rowsPerPage
总条数:total
总页数:totalPage
因为totalPage可以通过total和rowsPerPage计算出来,
totalPage=total%rowsPerPage==0?total/rowsPerPage:total/rowsPerPage+1;
所以我们只需要获得三个变量就可以了。
第一个pageNum通过前台传递过来。
第二个rowsPerPage也可以通过前台传递或直接指定。
第三个total需要从数据库查询得到,查询语句如下:
select count(*) from TableName
最后就是分页的语句了:
where 1=1 and (ID NOT IN (SELECT TOP ( rowsPerPage *( pageNum -1)) ID FROM TableName ORDER BY ID DESC))
ORDER BY
ID DESC
这条SQL的意思就是查询当前页要显示的条数,
条件是本页要显示的内容的ID不应该在之前页之内, 也就是不能重复显示。
(ID NOT IN (SELECT TOP ( rowsPerPage *( pageNum -1)) ID FROM TableName ORDER BY ID DESC))
总结:这样通过四个参数和上面的这条SQL语句就可以完成基本的分页了。有不清楚的可以留言。