oracle order by limit,SQL(ORACLE):ORDER BY和LIMIT

在12.1之前,Oracle不支持LIMIT或OFFSET关键字。如果要检索结果集的行N到M,您需要类似以下内容:

SELECT a.*

FROM (SELECT b.*,

rownum b_rownum

FROM (SELECT c.*

FROM some_table c

ORDER BY some_column) b

WHERE rownum <= <>) a

WHERE b_rownum >= <>

或使用分析函数:

SELECT a.*

FROM (SELECT b.*,

rank() over (order by some_column) rnk

FROM some_table)

WHERE rnk BETWEEN <> AND <>

ORDER BY some_column

这两种方法中的任一种将排序给出排序结果的行N到M.

在12.1和更高版本中,可以使用OFFSET和/或FETCH [FIRST | NEXT]运算符:

SELECT *

FROM some_table

ORDER BY some_column

OFFSET <> ROWS

FETCH NEXT <> ROWS ONLY

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值