1. 程式人生 > >Oracle--rownum關鍵字

Oracle--rownum關鍵字

rownum是Oracle資料庫中的一個特有關鍵字,返回的是一個數字代表記錄的行號。

1、rownum必須在select中才能被顯示

select rownum, empno,ename,sal from emp ;

    ROWNUM      EMPNO ENAME             SAL
---------- ---------- ---------- ----------
         1       7369 SMITH             800
         2       7499 ALLEN            1600
         3       7521 WARD             1250

2、rownum是系統動態生成的,並不是實體資料。

select empno,ename,sal from emp where rownum = 1;

     EMPNO ENAME             SAL
---------- ---------- ----------
      7369 SMITH             800

select empno,ename,sal from emp where rownum = 2;

未選定行

3、rownum是按照預設的順序生成

select rownum,empno ,ename ,sal from emp order by sal;

    ROWNUM      EMPNO ENAME             SAL
---------- ---------- ---------- ----------
         1       7369 SMITH             800
        12       7900 JAMES             950
        11       7876 ADAMS            1100
         3       7521 WARD             1250
         5       7654 MARTIN           1250

4、rownum只能使用>,>=,=符號,不能使用<,<=符號。

select rownum,empno ,ename ,sal from emp where rownum<=3;

    ROWNUM      EMPNO ENAME             SAL
---------- ---------- ---------- ----------
         1       7369 SMITH             800
         2       7499 ALLEN            1600
         3       7521 WARD             1250

select rownum,empno ,ename ,sal from emp where rownum>=2;

未選定行

5、分頁操作

select * from (select rownum rn,empno,ename,sal from emp) where rn>=3 and rn<=7;

        RN      EMPNO ENAME             SAL
---------- ---------- ---------- ----------
         3       7521 WARD             1250
         4       7566 JONES            2975
         5       7654 MARTIN           1250
         6       7698 BLAKE            2850
         7       7782 CLARK            2450