码迷,mamicode.com
首页 > 数据库 > 详细

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

时间:2019-12-02 01:11:28      阅读:150      评论:0      收藏:0      [点我收藏+]

标签:技术   表数据   数据量   ima   情况下   rownum   数据   oracl   oracle   

分页一直都是关系数据库的热门,在数据量非常多的情况下,需要根据分页展示,每页展示多少条记录,以此减轻数据的压力;

1实现原理,根据rownum取记录数,根据公式(页数-1)*每页想要展示的记录数 AND 页数*记录数,其中页数是变量,记录数是常量,ROWNUM为过滤字段。

下面的SQL实现了按页数去查记录,以及规定每页有多少条记录数;

SELECT T.* FROM
(SELECT ROWNUM AS RN,表名.* FROM 表名) T
WHERE RN BETWEEN (页数-1)*记录数+1 AND 页数*记录数;

例子:查询表DBA_USERS,表数据量一共有36条,需要分页,按每页12条展示,SQL如下:

SELECT &A,
RN,
USERNAME,
USER_ID,
DEFAULT_TABLESPACE
FROM (SELECT ROWNUM AS RN,
USERNAME,
USER_ID,
DEFAULT_TABLESPACE
FROM DBA_USERS)
WHERE RN BETWEEN (&A - 1) * 12 AND (&A) * 12;

当&A=1;

技术图片

 

 当&A=2:

技术图片

 

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

标签:技术   表数据   数据量   ima   情况下   rownum   数据   oracl   oracle   

原文地址:https://www.cnblogs.com/guipeng/p/11968434.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!