暂无图片
Oracle排序后如何限制返回的行数?
我来答
分享
坚果
2021-08-26
Oracle排序后如何限制返回的行数?

类似postgresql的order by xx limit 10;
oracle有这些写法吗?不想在里面套一层rownum。

我来答
添加附件
收藏
分享
问题补充
1条回答
默认
最新
Lucifer三思而后行
暂无图片

12C之前只能使用rownum来限制返回行数。

12C之后提出一个新的函数,通过偏移量来限制:

原sql返回结果如下:

SELECT * FROM lucifer ORDER BY id;

image.png

通过以下语句查询限制返回前三条:

SELECT * FROM lucifer ORDER BY id OFFSET 0 ROWS FETCH NEXT 3 ROWS ONLY;

如上语句即可返回前三行:

image.png

通过控制偏移量和需要显示的条数,能够更加灵活的限制返回结果。

希望能帮助到你!

暂无图片 评论
暂无图片 有用 0
打赏 0
暂无图片
回答交流
提交
问题信息
请登录之后查看
邀请回答
暂无人订阅该标签,敬请期待~~
暂无图片墨值悬赏