ORACLE中ROWNUM
2024-09-06 14:26:02
一、rownum
1、rownum是对结果集添加的一个伪列;
2、是先按某种条件查询出结果集之后又添加上的一个列;
3、它总是从1开始,因此在使用的过程中需要谨慎使用>,>=,=,between...and这些条件。
eg:
如下语句,执行此条语句你会发现就算表中有数据,查出的结果集也是空,是因为当取出第一条数据,此时ROWNUM = 1,不满足ROWNUM > 10的条件,一次舍去,再取出下一条数据此时ROWNUM还会被赋值为1,依次类推,取到最后也还是没有。
SELECT ROWNUM,t.ownername FROM SYS_USER t
WHERE ROWNUM >10
二、说明
1、ROWNUM 和 ROWID虽都被称为伪列,但它们的存在方式是不一样的,rowid 可以说是物理存在的,表示记录在表空间中的唯一位置ID,在DB中唯一。只要记录没被搬动过,rowid是不变的。rowid 相对于表来说又像表中的一般列,所以以 rowid 为条件就不会有 rownum那些情况发生。
2、另外还要注意:rownum不能以任何基表的名称作为前缀
最新文章
- HTML label标签的for属性--input标签的accesskey属性
- 配置jdk相关的记录
- 转载---QRcodeJS生成二维码
- php如何判断远程文件是否存在
- 一个订单相关的存储过程(MySQL)
- android124 zhihuibeijing 新闻中心-新闻 -北京页签 下拉刷新
- Java基础知识强化之IO流笔记60:打印流 之 改进复制文本文件的案例
- 转-[Python 学习]2.5版yield之学习心得
- Altera FPGA中的pin简介
- Java基础-Eclipse环境搭建(02)
- Hexo的更新 主题的更换
- 进程部分(IPC机制及生产者消费者模型)和线程部分
- JDK8中的并行流
- WPF中获取控件默认样式和模板XML
- linux下使用eclipse打开esp32工程文件,并进行编译下载。
- Arbitrage HDU1217
- ODAC(V9.5.15) 学习笔记(九)TOraSQLMonitor
- Linux 下上手 STC89C52RC
- [PureScript] Basic Data Constructors in PureScript
- meta 标签