这篇文章主要给大家介绍了关于Oracle分页查询的相关资料,文中通过示例代码介绍的非常详细,对大家学习或者使用Oracle具有一定的参考学习价值,需要的朋友们下面来一起学习学习吧

什么是分页查询

分页查询就是把query到的结果集按页显示。比如一个结果集有1W行,每页按100条数据库。而你获取了第2页的结果集。

为什么要分页查询

如果一个结果集有几十W行,那么在一个页面上显示肯定显示不完。同时,显示数据库记录是需要加载到内存的,而显示大量数据是消耗内存更多。

我们可以为了以下目的使用分页查询:

    为了精确定位结果集的内容 为了节约内存 为了在有限的页面空间显示适度的数据。

如何实现分页查询

使用Oracle的EMP表

select * from 
   ( select rownum rn, e.* from 
       ( select * from EMP) e 
   );

结果如下:

分页查询源码如下:

select * from 
     ( select rownum rn, e.* from 
              ( select * from EMP) e 
     )
where rn > pageSize * (page - 1) and rn <= pageSize * page 

分析源码:

我们选定每页(pageSize)为5。那么EMP表目前共有三页,1~5行为1页;6~10行为1页;1~15行为1页(缺第15行,那么第3页就显示4行记录)

页面从第1页开始。

我们要查询第2页的记录,那么page = 2。

where rn > 5 and rn <= 10

那么第2页是由第6,7,8,9,10行记录形成的。

select * from 
     ( select rownum rn, e.* from 
              ( select * from EMP) e 
     )
where rn > 5 and rn <= 10

结果如下:

分页查询也可以使用betwenn ... and ...

where rn = between (pageSize * (page - 1) + 1) and pageSize * page

可见分页查询是取某一范围的结果集。

总结

以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作具有一定的参考学习价值,谢谢大家对爱安网的支持。

    无相关信息
最新资讯
特斯拉:将自主研发新电池 预计4月正式宣布

特斯拉:将自主研发新电

特斯拉相关人士表示,特斯拉将自主研发新电池,预计会在4
苹果春季发布会或3月底举办:预计发布多款硬件新品

苹果春季发布会或3月

来自iPhone-ticker.de网站的消息称,苹果计划在今年3月3
微博将于2月26日发布2019年第四季度及全年财报

微博将于2月26日发布2

微博公司 定于美国东部时间2020年2月26日美国股市开盘
捐赠100万元后 得物App将1万件隔离衣等物资送往湖北

捐赠100万元后 得物Ap

得物App(原毒App)捐赠的第二批医疗物资近日发往武汉,包括
苹果美股盘前跌超4% 3月季度营收目标将无法实现

苹果美股盘前跌超4% 3

苹果美股盘前跌超4%。此前苹果对外宣布,受疫情影响,全球
棋(ma)牌(jiang)、换装类游戏春节增长最快,字节跳动成搅局者

棋(ma)牌(jiang)、换装类游戏春节

2020年春节期间下载量TOP10游戏中有3款来自字节跳动。
最新文章
Oracle 给rac创建单实例dg并做主从切换功能

Oracle 给rac创建单实

这篇文章主要介绍了Oracle 给rac创建单实例dg并做主
Oracle中多表关联批量插入批量更新与批量删除操作

Oracle中多表关联批量

这篇文章主要介绍了Oracle中多表关联批量插入,批量更
处理Oracle 监听文件listener.log问题

处理Oracle 监听文件l

这篇文章主要介绍了处理Oracle 监听文件listener.log
Windows Server 2012 安装oracle11g(图文教程)

Windows Server 2012

这篇文章主要介绍了Windows Server 2012 安装oracle11
centos7.7安装oracle11g脚本(推荐)

centos7.7安装oracle1

这篇文章主要介绍了centos7.7安装oracle11g脚本,本文
Oracle中的instr()函数应用及使用详解

Oracle中的instr()函

这篇文章主要介绍了Oracle中的instr()函数应用及使用
炸金花 传奇私服 江西快3 炸金花