在 Oracle 中,可以使用 ROWNUM
和 FETCH FIRST
等方法实现分页查询。以下是一个示例:
SELECT * FROM (
SELECT column1, column2, column3,
ROW_NUMBER() OVER (ORDER BY column1) AS rn
FROM table_name
)
WHERE rn BETWEEN start_row AND end_row;
在上面的示例中,我们首先使用 ROW_NUMBER()
函数为结果集中的每一行分配一个行号,并按照指定的列进行排序。然后我们在外部查询中使用 WHERE
子句和 BETWEEN
条件来筛选出需要的分页结果。
另外,还可以使用 FETCH FIRST
语句来实现分页查询。示例如下:
SELECT column1, column2, column3
FROM table_name
ORDER BY column1
OFFSET start_row ROWS
FETCH NEXT page_size ROWS ONLY;
在上面的示例中,我们使用 OFFSET
子句指定起始行数,使用 FETCH NEXT
子句指定每页的行数来实现分页查询。