已知总记录数(totalCount)和每页显示的数量(pageSize)
求总页数(pageCount)为多少?
算法1
public int getPageCount(int totalCount, int pageSize) {
return (totalCount -1) / pageSize + 1;
}
算法2 最容易理解
public int getPageCount(int totalCount, int pageSize) {
return totalCount % pageSize == 0 ? totalCount / pageSize : (totalCount / pageSize + 1);
}
算法3 大数据时存在溢出的隐患
public int getPageCount(int totalCount, int pageSize) {
return (totalCount + pageSize -1) / pageSize;
}
- 算法1和算法3可相互转化,本质是同一回事
使用当前页码(currentPage)和每页显示的数量(pageSize)
求limit
分页通用公式?
示例
SELECT username, age, sex
FROM user_table
LIMIT (curretPage - 1) * pageSize, pageSize