Oracle進階查詢——子查詢(分頁顯示案例)____Oracle

來源:互聯網
上載者:User

案例:分頁查詢顯示員工資訊:顯示員工號、姓名、薪水

        1.每頁顯示四條記錄

        2.顯示第二頁的員工

        3.按照月薪降序排序

分析:

        1.可以通過偽列rownum來顯示查詢資訊所在的位置。

         注意:rownum只能使用<、<=,不能使用>、>=。 Oracle中的行號(rownum)永遠從1開始

        2.先按照降序查詢出員工資訊

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

        3.將上面所查詢出來的結果作為一個集合,查詢出前面的8條記錄

           select rownum, empno,ename,sal from (

                      select rownum,empno,ename,sal from emp  order by sal desc)  e1

           where   rownum <8;

        4.將已經查詢出的前8條記錄作為一個集合,這個集合中的rownum則不是行號,它可以作為所查詢結果的

            第一列顯示在最終的查詢結果中。查詢出第5、6、7、8條記錄即第二頁的員工資訊。                   select r,empno,ename,sal 
                    from( select rownum  r, empno,ename,sal 
            from (select rownum,empno,ename,sal from emp  order by sal desc) e1
                    where   rownum <=8) e2

            where   r>4; 

          如圖所示:

          


 

      

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.