Avatar billede obix Nybegynder
13. september 2005 - 17:48 Der er 4 kommentarer

sql syntaks til db2, skip first n rows ?

Hej Eksperter

Kan man mod db2 fyre en sql af f.eks.

select * from tabellen order by id "skip first 10 rows"

Kan man på en måde få den til at springe de første antal rækker over og så kun tage de næste ti?

Det er fordi jeg skal lave et bladre system på en meget stor tabel så jeg kan ikke selecte alt ud og så bare bladre med programmet.

Alle forslag er velkomne.

Mvh Obix
Avatar billede nielle Nybegynder
13. september 2005 - 18:49 #1
Dette her ser ud til at være noget af det rigtige - men det afhænger af hvilken DB2-version du bruger:

http://expertanswercenter.techtarget.com/eac/knowledgebaseAnswer/0,295199,sid63_gci979317,00.html
Avatar billede arne_v Ekspert
13. september 2005 - 19:06 #2
det er vist stort set kun MySQL som har LIMIT n,m (formentlig fordi den
funktionalitet ikke garanterer konsistente hentninger - data kan ændre sig
mellem 2 queries)

DB2 har hvad der svarer til SQLServer TOP

SELECT TOP n ...

SELECT ... FETCH FIRST n ROWS ONLY

den kan bruges til at emulere LIMIT funktionalitet ved først at selecte n+m med
normal order, m med omvendt order og så sortere med normal order

dette vil dog ofte være resource krævende

bedste råd er derfor enten:
  - holde et ResultSet åben og scrolle i det (kan også godt belaste
    systemet lidt)
eller:
  - redsigne logikken så du kan bruge noget WHERE (vælge på start bogstav eller
    sådan noget)
Avatar billede nielle Nybegynder
27. september 2005 - 22:06 #3
Har du fået kigget på det?
Avatar billede arne_v Ekspert
04. november 2005 - 20:28 #4
??
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
Kurser inden for grundlæggende programmering

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