rownum使用方法

rownum使用方法:
1.使用rownum子查询:
     rownum是一个总是从1开始的伪列,当查询条件rownum>n(n>1)时,不能从数据库查到记录,因此要
 通过子查询解决:select t.* from (select rownum r,users.* from users ) t where r>2;
 结果:
 SQL> select t.* from (select rownum r,users.* from users ) t where r>2;
         R        ID USERNAME             PASSWORD                    AGE
---------- --------- -------------------- -------------------- ----------
         3         3 sd3                  dd3                          23
         4         4 dsd4                 ddd4                         23
         5         5 adsd5                ddd5                         43
 先通过子查询(select rownum r,users.* from users)获取全部数据或通过rownum<n(n大于1),获取
 前n条记录,然后从中查询满足条件的数据;
2.使用rownum排序:
  例如:  
  SQL> select rownum r,users.* from users order by username;
         R        ID USERNAME             PASSWORD                    AGE
---------- --------- -------------------- -------------------- ----------
         5         5 adsd5                ddd5                         43
         4         4 dsd4                 ddd4                         23
         2         2 qsd2                 dd2                          23
         1         1 sd1                  dd1                          23
         3         3 sd3                  dd3                          23
  从中可以看出rownum并不是按照name列来生成序号的,因为系统是按照记录插入式的顺序给记录排的号,
  为了解决这个问题,必须使用子查询:
  SQL> select rownum r,t.* from (select * from users order by username)t ;
         R        ID USERNAME             PASSWORD                    AGE
---------- --------- -------------------- -------------------- ----------
         1         5 adsd5                ddd5                         43
         2         4 dsd4                 ddd4                         23
         3         2 qsd2                 dd2                          23
         4         1 sd1                  dd1                          23
         5         3 sd3                  dd3                          23

 

posted @ 2013-10-29 16:42  High阔天空  阅读(777)  评论(0编辑  收藏  举报