对于rownum 来说他是oracle系统顺序分配为 查询返回的编号,
返回的第一行分配的是1,第二行分配的是2 以此类推。这个伪字段
可以用于限制查询返回的总行数,且rownum 不能以任何表的名称作为前缀
分页一:
select * from emp where rownum <=5;
分页二 :
使用较多,内层查询给rownum 定义别名 ,新生成一个数据类rn
select * from
(select rownum rn,a.* from emp a where hiredate >’01-6月-1981’ )b
where b.rn>5;
分页三:
利用minus实现两个查询结果的差来分页
select * from emp where hiedate >’01-6月-1981’ and rownum<=10
minus
select * from emp where hiredate >’01-6月-1981’ and rownum <=5;
实例 :查询工资最高的第6到10名员工
select * from
(select a.* ,rownum rn from (select * from emp order by sal desc ) a where
rownum<=10)
where rn<=10;
rownum 是一个伪列,初始值是1 ,作用是对结果进行标记,他始终从一开始,每次加一,对于oracle来说。rownum 通常用于实际应用中,实现分业查询
rowid 是伪列,用来标记记录的物理位置,在实际应用中通过rowid 将重复的记录快速删除,