在Oracle中,ROWNUM是一個偽列,用于返回查詢結果集中的行號。以下是ROWNUM的一些用法:
SELECT *
FROM table_name
WHERE ROWNUM <= N;
SELECT *
FROM (
SELECT t.*, ROWNUM AS rn
FROM table_name t
)
WHERE rn BETWEEN start_row AND end_row;
SELECT *
FROM (
SELECT t.*, ROWNUM AS rn
FROM table_name t
WHERE condition
)
WHERE rn <= N;
需要注意的是,ROWNUM是在查詢結果集返回之后計算的,因此不能在WHERE子句中直接使用ROWNUM進行過濾。如果需要對結果集進行排序,可以將查詢嵌套在子查詢中,并在外層子查詢中使用ROWNUM進行過濾。