在Oracle中,類似于MySQL中的LIMIT和OFFSET,可以使用ROWNUM來實現分頁查詢。以下是一個示例:
SELECT *
FROM (
SELECT t.*, ROWNUM AS rn
FROM your_table t
WHERE ROWNUM <= 20
)
WHERE rn > 10;
上面的SQL語句中,首先在子查詢中使用ROWNUM來給每一行添加一個行號,然后在外部查詢中使用rn來限制返回的行數和偏移量。在這個例子中,偏移量為10,返回的行數為10。
另外,Oracle 12c引入了FETCH FIRST語句,可以更簡潔地實現分頁查詢:
SELECT *
FROM your_table
OFFSET 10 ROWS
FETCH FIRST 10 ROWS ONLY;
這個語法更簡潔明了,可以指定偏移量和返回的行數。但是需要注意的是,FETCH FIRST語句只在Oracle 12c及以上版本中可用。