阅读量:0
在Oracle数据库中,可以使用ROWNUM来实现分页查询。以下是一个示例:
假设我们有一个名为"employees"的表,包含以下列:id, name, age, salary。我们想要查询第1页的数据,每页显示10条记录。
SELECT * FROM ( SELECT e.*, ROWNUM rn FROM employees e ) WHERE rn BETWEEN 1 AND 10;
在这个查询中,我们首先使用ROWNUM为employees表中的每一行分配一个行号。然后,我们在内部查询中选择所有行号在1到10之间的记录。这将返回第1页的数据。
如果我们想要查询第2页的数据,我们可以将上述查询中的行号范围更改为11到20:
SELECT * FROM ( SELECT e.*, ROWNUM rn FROM employees e ) WHERE rn BETWEEN 11 AND 20;
以此类推,我们可以使用ROWNUM实现任意页的分页查询。请注意,这种方法在每页记录数较大时可能会导致性能问题。在这种情况下,可以考虑使用其他分页技术,例如基于游标的分页。