假设你要查询的是表中的第 page 页,每页有 pageSize 条记录:
计算总记录数 total
SELECT COUNT(*) FROM table
计算总页数 totalPage:
int totalPage = (total + pageSize - 1) / pageSize;
计算当前页的起始位置 start:
int start = (page - 1) * pageSize;
查询对应页码的数据:
SELECT * FROM table LIMIT start, pageSize
假设每页显示pageSize 条数据,总共有total 条数据,则总页数为:
int totalPage = (total + pageSize - 1) / pageSize;
其中,total + pageSize - 1 的结果是为了向上取整,例如:
如果 total = 10,pageSize = 3,则 (total + pageSize - 1) / pageSize = (10 + 3 - 1) / 3 = 4。
如果 total = 10,pageSize = 4,则 (total + pageSize - 1) / pageSize = (10 + 4 - 1) / 4 = 3。
所以,如果共有10条数据,每页显示3条,则总共有4页;如果每页显示4条,则总共有3页。