oracle 12c 之前,分页要用rownum 来控制,写起来不方便,oracle 12c row-limiting子句对于排序数据限制返回行今后会广泛使用(MySQL上早就有的特性,MySQL开发该特性可能是特别考虑到对于网站分页查询的简化),也可以被称作Top-N查询。
这个是属于12c的新特性了
SELECT id, name FROM TEST_190404 ORDER BY id OFFSET 20 ROWS FETCH NEXT 11 ROWS ONLY;
Database 12c的FETCH FIRST ROWS特性可以简化老版本中ROW_NUM()或ROWNUM的分页排序写法, 大幅节约开发人员花在分页查询语句上的时间。但是执行性能没有提高,这个分页的写法,只是封装了rownum over()那种写法。
row-limiting子句用以限制某个查询返回的行数
可以通过FETCH FIRST/NEXT关键字指定返回结果的行数
可以通过PERCENT关键字指定返回结果的行数比例
可以通过OFFSET关键字指定返回从结果集中的某一行之后行数
--12c才有
SELECT OBJECT_ID, OBJECT_NAME FROM T ORDER BY OBJECT_ID OFFSET 20 ROWS FETCH NEXT 10 ROWS ONLY;
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。