- 查询emp表前5条记录 使用ROWNUM伪列,查询emp表前5条记录,SQL语句如下所示:
select * from emp where rownum <= 5; -
ROWNUM是一个伪列,对查询返回的行编号即行号,由1开始依次递增。注意:Oracle的rownum数值是在获取每行之后才赋予的,因此使用“rownum>数字”是查询不到数据的。 - :查询第3-5条记录,无需排序
首先,利用ROWNUM截取结果集中的部分数据,需要用到行内视图,SQL语句如下所示:
- select rownum num, e.* from emp e;
上述SQL语句中给ROWNUM一个别名num。
然后,将上述查询的结果作为一张虚表,其中,num为这张表中的一列。查询第3-5条记录,SQL语句如下所示:
- select * from (select rownum num, e.* from emp e)
- where num >= 3 and num <= 5;
- 查询公司工资最高的三个人
首先,按工资降序排列员工数据,SQL语句如下所示:
select * from emp order by sal desc; -
然后,将上述查询的结果作为一张虚表,再根据ROWNUM的特性查询公司工资最高的三个人,SQL语句如下所示:
- select * from
- (select * from emp order by sal desc)
- where rownum <= 3;
- 查询公司工资最低的五个人
首先,按工资升序排列员工数据,SQL语句如下所示:
- select * from emp order by sal;
然后,将上述查询的结果作为一张虚表,再根据ROWNUM的特性查询公司工资最低的五个人,SQL语句如下所示:
- select * from
- (select * from emp order by sal)
- where rownum <= 5;
Oracle分页查询综合示例
最新推荐文章于 2025-09-10 13:15:36 发布
本文介绍如何使用Oracle SQL中的ROWNUM伪列进行特定范围的数据查询,包括如何查询表中的前几条记录、特定区间内的记录以及最高或最低工资的员工。
796

被折叠的 条评论
为什么被折叠?



