2016-06-13 59 views
0

因爲我是oracle新手,不確定如何處理分頁邏輯。分頁邏輯 - Oracle

我需要一個基於起始值和限制值返回結果的查詢。

請參見下面的結果集

id name 
1 abc 
2 def 
3 ghi 
4 jkl 
5 qqq 
6 www 
7 eee 
8 ttt 
9 yyy 
10 uuu 
11 iii 
12 ppp 
13 aaa 
14 sss 
15 ddd 
16 fff 
17 ggg 
18 hhh 
19 jjj 
20 kkk 

對於想如果我給的值開始值= 0,上限= 5 那麼它應該返回下面的記錄

id name 
1 abc 
2 def 
3 ghi 
4 jkl 
5 qqq 

如果開始值= 5並限制= 15,那麼我應該返回以下結果

id name 
5 qqq 
6 www 
7 eee 
8 rrr 
9 ttt 
10 yyy 
11 uuu 
12 iii 
13 ooo 
14 ppp 
15 ddd 
16 fff 
17 ggg 
18 hhh 
19 jjj 

請認真閱讀e幫助我查詢 如果有任何問題,請讓我知道。

謝謝

+0

你試過Google搜索「oracle分頁」嗎? – sstan

+1

[Oracle中分頁的最佳實踐?](http://stackoverflow.com/questions/13738181/best-practice-for-pagination-in-oracle)或[與Oracle分頁](http:///stackoverflow.com/questions/241622/paging-with-oracle)。 – sstan

+0

是的,我需要一個帶有起始值和限制條件的查詢。您提供的鏈接與頁碼和頁面大小/開始和結束值。 – Naresh

回答

0

可能最好使用綁定變量。如果您不熟悉Oracle綁定變量,請花15分鐘閱讀有關這些變量的信息,這些信息非常有用。

select id, name 
from your_table 
where id between :start_value and :start_value + :limit_value - 1;