1. RowNum伪列

Oracle中,RowNum是一个伪列,表示当前记录是查询结果集中的第几条。

RowNum在使用上应该注意,不能在where条件中用RowNum大于、大于等于、等于某个大于1的数,这样是无意义的,因为结果集的第一条记录的RowNum必然是1,不可能大于1,所以以下几条SQL都是错误的,是不可能有结果的:

1 SELECT * FROM student WHERE RowNum>1;
2 SELECT * FROM student WHERE RowNum>2;
3 SELECT * FROM student WHERE RowNum=2;
4 SELECT * FROM student WHERE RowNum BETWEEN 1 AND 60;

2. RowNum实现分页查询

那么如何实现分页查询呢?我们可以给RowNum起个别名,通过两层循环来实现

1 SELECT id from (select id, RowNum rn from student where RowNum<=30)  WHERE rn>=21;

以上例子实现了查询第21条道第30条的所有数据。

有个疑问,SELECT id, RowNum rn FROM STUDENT WHERE rn BETWEEN 21 AND 30;是否可以?答案是不可以,因为RowNum的别名rn只能在外层循环里用,在本层循环里只能用RowNum,不能用别名rn,这条语句会编译报错。

转载于:https://www.cnblogs.com/james6176/p/3526815.html

Oracle分页查询与RowNum相关推荐

  1. Oracle数据库实现主键自增(利用sequence)和分页查询(利用rownum)

    一.Oracle数据库实现主键自增必须通过sequence来实现 注意:sequence在每次调用nextval就会自增1 create sequence seq_user; --创建一个user表的 ...

  2. Oracle 分页查询 rownum 和 offset

    Oracle 分页 一.Rownum 的概念 A ROWNUM value is assigned to a row after it passes the predicate phase of th ...

  3. Oracle分页查询语句(六)

    Oracle的分页查询语句基本上可以按照本文给出的格式来进行套用. Oracle分页查询语句(一):http://yangtingkun.itpub.net/post/468/100278 Oracl ...

  4. oracle 关联出现重复数据,ORACLE 分页查询出现重复记录的解决办法

    今天在用Oracle分页查询数据的时候出现了重复数据,有的数据无法查出,很郁闷,想了想,找了资料,发现问题 分页语句: select * from ( select row_.*, rownum ro ...

  5. Oracle分页查询格式(八)

    Oracle的分页查询语句基本上可以按照本文给出的格式来进行套用. Oracle分页查询格式(一):http://yangtingkun.itpub.net/post/468/100278 Oracl ...

  6. java oracle分页查询语句_oracle分页查询语句,java得到分页查询语句的方法

    oracle分页查询语句 select * from ( select a.*, rownum rn from (select * from table_name) a where rownum &l ...

  7. Oracle数据库:创建和删除视图view,简单和复杂视图,内建视图,topN分析,oracle分页查询

    Oracle数据库:创建和删除视图view,简单和复杂视图,内建视图,topN分析,oracle分页查询 2022找工作是学历.能力和运气的超强结合体,遇到寒冬,大厂不招人,可能很多算法学生都得去找开 ...

  8. oracle分页排序查询,Oracle分页查询中排序与效率问题解决方法详解

    本文将结合作者近日工作中,在ORACLE数据库分页查询时,遇到一个小问题,为大家讲解如何解决Oracle分页查询中排序与效率问题. 原始未分页查询Sql代码如下: select ROWNUM rn, ...

  9. JAVA中oracle分页语句,oracle分页查询语句,java得到分页查询语句的方法

    oracle分页查询语句 select * from ( select a.*, rownum rn from (select * from table_name) a where rownum &l ...

  10. oracle分页查询sql语句的rn,Mysql和Oracle中的分页SQL语句

    以前总结过一篇,Oracle分页查询语句的优化,当时对Oracle分页语句也着实花费了点时间记忆,不过今天在面试的时候,又考到了不同数据库的分页sql语句,对Oracle数据库的书写又存在了问题,以为 ...

最新文章

  1. CentOS 5.5高负载下,网卡会自动断开
  2. nginx用户权限问题
  3. linux centos7 root密码重置
  4. java获得电脑性能_Java:使用SingletonStream获得性能
  5. Android 客户端与服务器交互方式
  6. CoreAnimation-CATransform3D-1
  7. Windows Server 2008 安装详细流程 解说
  8. Spring Date JPA实现增删改查
  9. java实现读写分离
  10. acm竞赛使用python的多吗_我该参加acm竞赛吗?
  11. HTML5倍数功能视频播放器(加速2倍,1.5倍播放)
  12. ecmobile php开发文档,ecmobile PHP接口说明文档之购物车(cart/create|list|detele|update)
  13. 网络钓鱼(Phishing)攻击方式
  14. codeforces 1728E
  15. KendoUI系列:switch 开关
  16. python画二维折线图_利用python画折线图
  17. 记一次与流氓的战争——卸载360安全卫士之后
  18. 我的理想计算机作文300字,我的理想作文300字(精选12篇)
  19. 如何挑选最适合自己的车
  20. webpack和babel的区别

热门文章

  1. 边工作边刷题:70天一遍leetcode: day 26
  2. 使用SQLite3存储和读取数据(转)
  3. JSP听课笔记(一)
  4. HTML5 Media 原创翻译——第一章(持续更新中)
  5. 程序猿的执业修养(七)——不要卖弄,多思慎言
  6. python3安装与环境配置和pip的基本使用
  7. 干货来袭丨资产可用性真的是终极目标吗?
  8. [原创]markdown语法学习(commonmark)
  9. 高程3总结#第20章JSON
  10. Skype for Business 2015全新部署_07.前端安装02