Thomas Darimont
Erfahrenes Mitglied
Hallo!
Hier mal ein Beispiel wie man Oracle dazu verwenden kann einen bestimmten "Zeilenbereich"
einer Tabelle anzuzeigen. Dies kann man Beispielsweise dazu verwenden Daten Seitenweise bsp.
auf einer Webseite (Artikelübersicht, z.Bsp.: maximal 25 Artikel pro Seite etc.) anzuzeigen.
liefert:
Gruß Tom
Hier mal ein Beispiel wie man Oracle dazu verwenden kann einen bestimmten "Zeilenbereich"
einer Tabelle anzuzeigen. Dies kann man Beispielsweise dazu verwenden Daten Seitenweise bsp.
auf einer Webseite (Artikelübersicht, z.Bsp.: maximal 25 Artikel pro Seite etc.) anzuzeigen.
Code:
drop table test;
drop sequence testid;
create table test (id int, txt varchar2(30));
create sequence testid start with 1 increment by 1;
insert into test values (testid.nextval,'text' || testid.currval);
insert into test values (testid.nextval,'text' || testid.currval);
insert into test values (testid.nextval,'text' || testid.currval);
insert into test values (testid.nextval,'text' || testid.currval);
insert into test values (testid.nextval,'text' || testid.currval);
insert into test values (testid.nextval,'text' || testid.currval);
insert into test values (testid.nextval,'text' || testid.currval);
insert into test values (testid.nextval,'text' || testid.currval);
insert into test values (testid.nextval,'text' || testid.currval);
insert into test values (testid.nextval,'text' || testid.currval);
insert into test values (testid.nextval,'text' || testid.currval);
insert into test values (testid.nextval,'text' || testid.currval);
insert into test values (testid.nextval,'text' || testid.currval);
insert into test values (testid.nextval,'text' || testid.currval);
insert into test values (testid.nextval,'text' || testid.currval);
Code:
SQL> select * from test order by txt asc;
ID TXT
---------- --------------
1 text1
10 text10
11 text11
12 text12
13 text13
14 text14
15 text15
2 text2
3 text3
4 text4
5 text5
6 text6
7 text7
8 text8
9 text9
15 Zeilen ausgewõhlt.
Code:
select * from
(
select rownum as num, t.* from
(
select * from test order by txt asc
) t
)
where num between 7 and 11
order by txt asc
/
NUM ID TXT
---------- ---------- ---------------
7 15 text15
8 2 text2
9 3 text3
10 4 text4
11 5 text5
Gruß Tom