分页逻辑 - Oracle

时间:2016-06-13 19:37:25

标签: sql oracle oracle11g pagination

由于我是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

假设我给出的值是start value = 0和limit = 5 那么它应该返回以下记录

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

如果起始值= 5且limit = 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

请帮我查询一下 如果有的话,请告诉我。

由于

1 个答案:

答案 0 :(得分:0)

可能最好为此使用绑定变量。如果您不熟悉Oracle绑定变量,请花15分钟阅读它们,它们非常有用。

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