伪列:ROWNUM
ROWNUM可以做的两件事:
- 取得第一行数据
- 取得前N行的数据
注:ROWNUM只能查询第一条数据,如果把ROWNUM=1换成ROENUM=2则无法查询数据。
一、简单的分页查询
1、使用 rownum 来实现分页
- 示例:取学生表的前5条数据
select rownum, t.* from student_table t where rownum <=5
- 结果:
2、使用rownum 三层来实现分页
- 示例:取学生表的4至6的数据
select * from
(
select student.* , rownum rn from
(
select * from student_table t
)student
where rownum <=6
) where rn >=4
- 结果:
二、基于排序的分页
- 示例:获取英语成绩前三的学生数据(思路:先进行分组排序,再进行分页取数据)
select rownum ,t.* from student_table t where rownum <=3 order by t.english desc
- 结果: