码迷,mamicode.com
首页 > 数据库 > 详细

Oracle中rownum原理介绍

时间:2018-01-28 11:13:30      阅读:172      评论:0      收藏:0      [点我收藏+]

标签:blog   读取   sele   where   条件   acl   数据文件   post   rac   

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原理介绍

标签:blog   读取   sele   where   条件   acl   数据文件   post   rac   

原文地址:https://www.cnblogs.com/huangbiquan/p/8367681.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!