1. ROWNUM是oracle系统顺序分配为从查询返回的行的编号,返回的第一行分配的是1,第二行是2,
依此类推,这个伪字段可以用于限制查询返回的总行数,且rownum不能以任何表的名称作为前缀。
注意:一旦进行排序操作,ROWNUM发生变化
只能用子
查询
来实现先排序,
后
rownum
2.查找表中第一行记录:
select * from temp where rownum = 1;
注意:无法查到rownum = n(n>1的自然数)
3查找表中大于第n行记录:需要将rownum 起别名,实现由伪列变成表主列
select * from (
select rownum no from temp
) where no > 2;
4.查找表中小于第n条记录:
对于rownum<n((n>1的自然数)的条件认为是成立的
select * from temp where rownum < 2;
5.分页实现:
select * from (
select rownum no from temp where rownum < 15
) where no >= 1;
6.对于有排序的分页 :只能用子查询来实现先排序,后rownum
select * from
( select rownum r,a from yourtable where rownum <= 20
order by name )
where r > 10 ;
补充:对于rownum只能用以上符号(<、<=、!=),
不能用:>,>=,=,Between...and。由于rownum是一个总是从1开始的伪列,Oracle 认为这种条件不成立。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容,请联系我们,一经查实,本站将立刻删除。
如需转载请保留出处:https://51itzy.com/kjqy/36536.html