总页数,页码,起始记录数之间的关系

totalRecords:总记录数

pageRecordNum:每页最多显示记录数

totalPages:总页数

pageNo:页码

pageBegin:每页开始的记录数

pageEnd:每页结束记录数

各变量之间的关系:

totalPages = totalRecords%pageRecordNum  ==  0 ?totalRecords / pageRecordNum :totalRecords / pageRecordNum + 1;

pageBegin =  pageNo<=1 ?0 :(pageNo-1)*pageRecordNum;

pageEnd = pageNo * pageRecordNum > totalRecords ?totalRecords:pageBegin + pageRecordNum - 1;

注意:页码,总页数,当前页  三者关系:

总页数即为所有数据需要多少页才可以显示。

页码是我们想跳转到的那一页。

当前页即当前页为第几页。

时间: 2024-10-03 07:40:23

总页数,页码,起始记录数之间的关系的相关文章

OpenERP 关于页码总页数

如何设置"第几页/共几页",看了这个你就明白了 来源: <https://bugs.launchpad.net/openobject-server/+bug/1138102> 来自为知笔记(Wiz) OpenERP 关于页码总页数,布布扣,bubuko.com

分页的总记录数简单总结

提出:   页面一行显示10条数据,如果数据库有20条数据,就显示2页,如果数据库有28数据,就应该显示3页. 下面对如何计算进行分析. 解决: 方法一: if(totalRecord % pageSize == 0){ //如果数据库总记录数与页面显示条数整好相除(20 / 10 = 2),就是一般情况 totalPage = totalRecord / pageSize; }else{ //如果数据库总记录数与页面显示条数有多余条数(28 / 10 = 2.8),无法得到多余 //数据的页数

分页总数计算,根据总记录数获取分页总数_目标科技

分页总数计算,根据总记录数获取分页总数,本文章提供5种写法,大家感觉哪个好用就拿去用吧. int pageSize = 20; //每页记录数量 int totalCount = 100005; //总记录数 int pageCount; //总页数 //方法一: pageCount = (totalCount + pageSize - 1) / pageSize; //推荐写法 //方法二: pageCount = (totalCount - 1) / pageSize + 1; //方法三:

关于criteria分页中获取总记录数异常问题

一.情景在线 运维同事反馈了一个问题,说咱们查询分机号码的api 接口返回数据异常,具体的情况时是: 1.查询时第一页信息所返回的总记录数正确,数据正确. 2.查询第二页总记录数为 "0" ,数据为对应的第二页数据. what!!! 二.为题排查 按照同事的提供的线索,在本地复现发现-->果然如此! 传入当前页 pageNow>1 时 总数totel 将为零,且必现! 多次测试发现: 传入pageNow=1 控制台打印的sql select count(*) as y0_

[MSSQL]如何高效查询表的总记录数

如何高效查询表的总记录数?[总结-整理-马克] 首先想到的自然是在表主键上应用COUNT函数来查询了,这个是目前使用最多的方法,没有之一 SELECT COUNT(1) ROWS FROM product 这里再给出一些其它方法,这些方法或多或少会有一些限制,或者看起来不是那么"完美",但依然有一定的借鉴意义,信息量不大,请客官慢用 另类方法1 充分利用系统自带的存储过程SP_SPACEUSED,详细的使用方式推荐谷哥或度娘,看代码 EXEC SP_SPACEUSED 'PRODUCT

超市账单管理------之获取总记录数

根据以前写过的登录,现在来写一下获取总记录数根据上一个继续编写 1.在IUserInfoDAO中编写 1 //2.获取总记录数 2 public int getTotalCount(); IUserInfoDAO.xml 1 <!--2.获取总记录数--> 2 <select id="getTotalCount" resultType="int"> 3 select count(1) from smbms_user 4 </select

group by 获取总记录数

sql中有group buy 后如何获取总记录的条数,来生成分页 当然一般情况下我是不推荐这样的分页,如果你真的需要应该是你表结构设计有问题 1.适用于所有情况 $db = new PDO(DSN...); $db->setAttribute(array(PDO::MYSQL_USE_BUFFERED_QUERY=>TRUE)); #必须开启查询缓存 $rs = $db->query('SELECT SQL_CALC_FOUND_ROWS * FROM table LIMIT 5,15'

MSSQL语句学习(查询表的总记录数)

如何高效查询表的总记录数(通用方法) SELECT COUNT(1) ROWS FROM product 野路子1:利用系统自带的存储过程SP_SPACEUSED,详细的使用方式推荐谷哥或度娘, EXEC SP_SPACEUSED 'PRODUCT' 野路子2: 很多表都会设计一个步长为1的自增长整型(INT)列作为表主键,该做法优劣这里不展开讨论,仅基于这一"习惯",外加一个假设:该字段连续无为断,则可以使用MAX函数了,限制较多哈 1,自增长列 2,该列连续 SELECT MAX(

Oracle实现分页,每页有多少条记录数

分页一直都是关系数据库的热门,在数据量非常多的情况下,需要根据分页展示,每页展示多少条记录,以此减轻数据的压力; 1实现原理,根据rownum取记录数,根据公式(页数-1)*每页想要展示的记录数 AND 页数*记录数,其中页数是变量,记录数是常量,ROWNUM为过滤字段. 下面的SQL实现了按页数去查记录,以及规定每页有多少条记录数: SELECT T.* FROM(SELECT ROWNUM AS RN,表名.* FROM 表名) TWHERE RN BETWEEN (页数-1)*记录数+1