网络编程
位置:首页>> 网络编程>> 数据库>> 简单实例解释Oracle分页查询

简单实例解释Oracle分页查询

作者:梦回流年梦呓语  发布时间:2023-07-16 00:54:03 

标签:oracle,分页,查询

什么是分页查询

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

为什么要分页查询

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

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

  • 为了精确定位结果集的内容

  • 为了节约内存

  • 为了在有限的页面空间显示适度的数据。

如何实现分页查询

使用Oracle的EMP表


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

结果如下:

简单实例解释Oracle分页查询

分页查询源码如下:


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

结果如下:

简单实例解释Oracle分页查询

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


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

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

来源:https://segmentfault.com/a/1190000021026631

0
投稿

猜你喜欢

  • PJBLOG3的相关日志,现在网上好像还没有谁有相关的修改说明吧,反正升级之后,正好有必要,也就写了个,在这里也给大家共享共享。当前相关日志
  • 先按照下面的表结构创建mysql_order_by_test数据表,我们用实例一点一点告诉你,MySQL order by的用法。ORDER
  • 当数据量猛增的时候,大家都会选择库表散列等等方式去优化数据读写速度。笔者做了一个简单的尝试,1亿条数据,分100张表。具体实现过程如下。首先
  • 在.net 1.1中我们要实现压缩这一功能,一般都是用open source的SharpZipLib 或者调用
  • 有时一些网页对源码进行了加密,我们很难找到类似像“onselectstart="return false"”这样的代码,
  • 1、查找表结构,判断要加入的列是否已存在2、如果不存在,则执行添加 CREATE PROCEDURE `mysql_sp_add_
  • AddHeaderAddHeader 方法用指定的值添加 HTML 标题。该方法常常向响应添加新的 HTTP 标题。它并不替代现有的同名标题
  • 本人最近在当当网上购买了一本关于用户体验的书,在此把最实在的内容整理下发给大家分享下。第一步:表现层视觉设计,也就是我们说的网页设计师做的工
  • 文件名:Awa_temp.Class.asp 代码如下:<% 'Crazy蛙!模板操作类 '作者C
  •   创建与打开站点启动FrontPage XP,选择菜单“文件/新建”,再单击“网页或站点”命令选项。在“新建网页或站点”任务窗格
  • 互联网的真正算得上成功的产品屈指可数,每年都有成千上万个新网站出现,同时也有成千上万的网站死去,而那些算得上成功的产品,无不是从这些尸骨堆里
  • (1)、back_log:要求 MySQL 能有的连接数量。当主要MySQL线程在一个很短时间内得到非常多的连接请求,这就起作用,然后主线程
  • asp压缩access数据库,具体asp代码见下: Class DatabaseTools   &n
  • 这几天不是很忙,就找了些拖动布局方面的资料看看,也学着写了个拖动布局的效果,没想到花了好多时间,七拼八凑,总算是把这个效果写出来了。哎!还是
  • 您在访问网站时是否会在有些页面上见到这种功能---您在可以访问此网站的同时,还可以查看您免费邮箱中是否有新邮件。这个功能是不是让您觉得很心动
  • 内容摘要:本文是一篇实例讲解的文章。作为一个普通的程序员,我深知,一个优秀的例程,对于正在学习编程的人是多么的有帮助。本文中使用的例程,是一
  • 前言 日益增长的分布式应用需求要求实现更好分布式的软件环境,不断推动着分布式技术的进步。Oracle数据复制是实现分布式数据环境的一种技术,
  • 几天前,想把上个月校园招聘的餐旅费报销一下。结果在公司内网的报销系统折腾了三个半小时才搞定。看看自己报销的金额:802块。觉得挺无奈,花了三
  • 前言本文主要给大家介绍了关于golang分页算法的相关内容,分享出来供大家参考学习,下面话不多说了,来一起看看详细的介绍吧示例代码如下://
  • 用户登录验证脚本,Chkpwd.asp<% '=======用户登录验证脚本======= '如果尚未定义Passed
手机版 网络编程 asp之家 www.aspxhome.com