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,又被删除,依次类推,便没有了数据。

相关文章:

  • 2022-02-10
  • 2021-11-27
  • 2022-02-10
  • 2021-11-14
  • 2021-10-18
  • 2022-12-23
  • 2022-01-07
猜你喜欢
  • 2022-12-23
  • 2022-01-07
  • 2022-01-07
  • 2022-02-10
相关资源
相似解决方案