oracle分頁技術講解

2021-06-09 02:37:04 字數 821 閱讀 6620

編寫任務,資料庫的資料量較大,一次獲得了所有的使用者,造成伺服器的記憶體負擔特別重,便對**做了優化,採用了分頁技術來分批獲得使用者的資料,減少對記憶體的負擔。

1: hibernate分頁技術(直接呼叫hibernate介面)

public list query(int pagesize,int currentpage,string queryhql) }

}2:jdbc分頁技術

(1)jdbc查詢第一種方案

查詢總數:select count(*) as total from account;

設定分頁大小:int pagesize=1000;

總共頁數  int pages = total/pagesize;

是指分頁查詢語句:select accountid from (select accountid,rownum as rown from account where and rownum<=x ) c where c.rown>y ;(查詢在y到x的資料)

執行體: //

for(int i=0;i<=pages;i++))

//查詢語句}

(2)jdbc查詢第二種方案:

查詢sql語句:

select accountid from (select accountid,rownum as rown from account ) c where c.rown between x and y;(其中x為min,第二個y為max);

第一種方案和第二種方案比較:

第乙個查詢效率比第二個查詢效率高:第一種只需要內層查詢只需要返回x 個結果,而第二種方案內層查詢需要返回所有的查詢結果。

oracle分頁技術

分頁場景在現實生活中很常見,所以我們需要懂得如何利用sql語句實現資料的分頁檢索。步驟一 建立測試表 create table test datetime date,str varchar2 32 步驟二 插入測試資料 declare v1 date to date 20160801010000 y...

Oracle分頁技術詳解

分頁查詢語句 select from select a.rownum rn from select from table table name a where rownum 40 where rn 20 最內層的查詢select from table name 表示不進行翻頁的原始查詢語句。rown...

Oracle分頁技術詳解

原文出處 分頁查詢語句 select from select a.rownum rn from select from table table name a where rownum 40 where rn 20 最內層的查詢select from table name 表示不進行翻頁的原始查詢語句...