Oracle 分頁、取期間資料、TOP前幾

來源:互聯網
上載者:User

標籤:style   color   ar   sp   資料   art   代碼   bs   size   

Oracle沒有 sqlserver的 top number 功能。只能以期間的形式實現

 

 

代碼實現分頁,參數curPage 當前頁、pageSize 每頁行數,計算出起始結束頁碼

int startPage = (curPage - 1) * pageSize + 1;
int endPage = curPage * pageSize;

如:當前第一頁,每頁10行得到   1,10

當前第二頁,每頁10行得到21,20

....

Oracle SQL寫法

取  第一條到第十條資料(索引從1開始),同等於 TOP 10

select *
from (select t.*, rownum rn from sys_table t where rownum <= endPage )
where rn >= startPage 

 

結果如下

select *
from (select t.*, rownum rn from sys_table t where rownum <= 10)
where rn >= 1

 

 

錯誤寫法

select *
from (select t.* from sys_users t where rownum <= 10)
where rownum >= 1

Oracle 分頁、取期間資料、TOP前幾

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在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.