Oracle中rownum原理介绍

Posted 碧水幽幽泉

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Oracle中rownum原理介绍相关的知识,希望对你有一定的参考价值。

rownum原理如下:
1.执行查询操作
2.将第一行的row num置为1
3.将得到的行的row num与条件相比较,如果不匹配,则抛弃行,如果匹配,则返回行
4.oracle获取下一行,然后将rownum增1
5.返回第3步

从这个原理可以知道,select rownum,name from emp where rownum > 5;不返回行
如何理解呢?
rownum是一个序列,是oracle数据库从数据文件或缓冲区中读取数据的顺序。
它取得第一条记录则rownum值为1,第二条为2,依次类推。
因为你用>时,因为从缓冲区中得到的第一条记录的rownum为1,不符合>5的条件,所以被删除,接着取下条,
可是它的rownum还是1,又被删除,依次类推,便没有了数据。











以上是关于Oracle中rownum原理介绍的主要内容,如果未能解决你的问题,请参考以下文章

Oracle的rownum原理和使用(整理几个达人的帖子)

Oracle的rownum原理和使用

oracle 分页 使用rownum的分页方式

Oracle 11gR2 RAC监听器原理介绍

Oracle中ROWNUM的使用技巧

oracle中rownum和row_number()