Gå til innhold

forrige og neste rad i mysql


Anbefalte innlegg

finnes det en funksjon for å ta query på neste eller forrige rad i mysql?

 

Jeg har en oversikt med info om personer, så vil jeg lage neste og forrige-knapper, sortert alfabetisk og etter sted personen bor.

Altså lurer jeg på om det er en mulighet for å finne ut nummeret på raden jeg har tatt query av, slik at jeg kanskje kan bruke limit ellerno til forrige/neste etter at jeg har sortert, ettersom jeg hele tiden legger inn nye personer.

 

Noen som kan hjelpe?

Si ifra hvis jeg forklarte dårlig.

På forhånd takk.

Lenke til kommentar
Videoannonse
Annonse

Du kan jo bruke primær-nøkkel-feltet til den raden du har, og leite etter rader som har større primær-nøkkel, sortert etter primær-nøklene, med LIMIT 0,1.

 

Som oftest er det jo vanligere å sortere det alfabetisk (etter navn på personane), og då må dette gjerast på ein litt annan måte. Då må du leite etter rader der navnet "er større enn" navnet du har (kjem leksikografisk seinare), sortert etter navnet, med LIMIT 0,1.

 

Om du har strukturen på databasen, så vil det vere lettare å forklare dette. :)

Lenke til kommentar

Jeg vil ha det alfabetisk ja, derfor har vel ikke primærnøkkel noen hensikt.

strukturen er slik:

 

`sted` varchar(128) NOT NULL default '',

`navn` varchar(128) NOT NULL default '',

`info` mediumtext NOT NULL,

`bilde` varchar(128) NOT NULL default '',

`url` varchar(128) NOT NULL default ''

 

Personene skal bli listet opp etter sted, og så alfabetisk.

Det har jeg klart greit, men problemet mitt er altså neste/forrige.

 

Vil gjerne ha en bedre forklaring på det du nevnte.

Lenke til kommentar

Okei, for å få all info om "neste" person alfabetisk, så trur eg følgande SQL skal gjere trikset;

 

For å få neste;

SELECT * FROM tabell WHERE sted > 'stedetviserpå' ORDER BY sted, navn LIMIT 0, 1

 

For å få forrige;

SELECT * FROM tabell WHERE sted < 'stedetviserpå' ORDER BY sted DESC, navn DESC LIMIT 0,1

 

Hadde vore kjekt å vete om dette fungerer... :) Er litt usikker på den siste der...

 

Forresten så er det ofte ein god idè å ha ein primærnøkkel, t.d. kalt 'id'. Uten ein primærnøkkel vil det vere svært vanskelig å linke tabellar mot kvarandre, og å gjere meir avanserte spørringar.

Lenke til kommentar

Opprett en konto eller logg inn for å kommentere

Du må være et medlem for å kunne skrive en kommentar

Opprett konto

Det er enkelt å melde seg inn for å starte en ny konto!

Start en konto

Logg inn

Har du allerede en konto? Logg inn her.

Logg inn nå
×
×
  • Opprett ny...