Avatar billede a_c Nybegynder
23. maj 2001 - 10:04 Der er 5 kommentarer og
1 løsning

Begræns antallet af records der bliver returneret

Hvordan kan jeg i ORACLE begrænse antallet af records der bliver returneret, ligesom LIMIT i MySql,
Eller måske TOP som i MSSQL.

mvh A_C
Avatar billede Slettet bruger
23. maj 2001 - 10:05 #1
Helt banalt:

select *
from tabel
where rownum < 33;
Avatar billede a_c Nybegynder
23. maj 2001 - 10:08 #2
Jeg fandt ud af det.
Man skal bruge pseudokolonnen RowNum.
Avatar billede a_c Nybegynder
23. maj 2001 - 10:08 #3
Jeg du får dem nu aligevel.
Tak
Avatar billede Slettet bruger
23. maj 2001 - 10:09 #4
Du kan ikke stole på rownum, hvis der er en ORDER BY i din sætning.

Så bliver du nødt til at lave en group-by med noget i den følgende stil, hvor du vælger række 33 til 99:

select tabelalias2.felt
from (
select tabelalias1.felt, rownum rn
from (
select felt
from tabel
group by felt) tabelalias1
) tabelalias2
where tabelalias1.rn between 33 and 99
Avatar billede a_c Nybegynder
23. maj 2001 - 10:09 #5
Hvad fanden var det jeg fik skrevet der...ha ha
Avatar billede a_c Nybegynder
23. maj 2001 - 10:12 #6
OK tak for din hurtige respons.
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Computerworld tilbyder specialiserede kurser i database-management

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester