在 SQL 中,Rownum 是 Oracle 數據庫提供的一個偽列,用來為查詢結果集中的每一行分配一個唯一的行號。利用 Rownum 可以很方便地實現分頁查詢功能。以下是一個示例 SQL 查詢,展示如何利用 Rownum 進行分頁查詢:
SELECT *
FROM (
SELECT
t.*,
ROWNUM AS row_number
FROM
your_table t
WHERE
your_conditions
)
WHERE
row_number BETWEEN start_row AND end_row;
在上面的查詢中,your_table 是要查詢的表名,your_conditions 是查詢條件,start_row 和 end_row 分別是要查詢的起始行和結束行。通過嵌套子查詢,我們為每一行結果分配了一個行號,然后在外層查詢中根據行號篩選出需要的數據,實現了分頁查詢的功能。
需要注意的是,在 Oracle 數據庫中,Rownum 是在查詢結果返回之后才分配的行號,因此我們需要在子查詢中先為結果集分配行號,然后再在外層查詢中進行篩選。