范例:查询 emp 表带有 rownum 列
代码语言:javascript复制select rownum, t.* from emp t
我们可以根据 rownum 来取结果集的前几行,比如前 5 行
但是我们不能取到中间几行,因为rownum不支持大于号,只支持小于号,如果想 实现我们的需求怎么办呢?答案是使用子查询,也正是oracle分页的做法。
第一种写法
代码语言:javascript复制select *
from (select rownum rm, a.* from (select * from emp) a where rownum < 11) b where b.rm > 5
第二种写法
代码语言:javascript复制select *
from (select rownum r ,emp.* from emp) b
where b.r >5 and b.r <11