Avatar billede martinfrost Nybegynder
28. april 2004 - 13:56 Der er 3 kommentarer og
1 løsning

Forrige/Næste record

$result = mysql_query("Select ID, Nick From SejTabel Where Nick = 'Postmand Per' Order By Nick");

Nu vil jeg gerne kende Nick og ID på den person, der står lige før Postmand Per (alfabetisk) og lige efter Postmand Per (ligeledes alfabetisk). Hvordan gøres dette smartest?

Mvh
Martin
Avatar billede flim Nybegynder
28. april 2004 - 14:05 #1
Hvis du har et id for hver post i din database trækker du bare en fra det id Postman Per har, så får du den før.. og lægger en til det id Postman Per har, så får du posten efter...
Avatar billede martinfrost Nybegynder
28. april 2004 - 14:11 #2
Ganske rigtigt, hvis jeg ønskede det nummerisk forrige/næste ID. Der er ingen, der siger, at ID'erne følger den alfabetiske orden :-)

Eksempel:

  ID 4 = "Anders And"
  ID 5 = "Postmand Per"
  ID 6 = "Alfons Åberg"
Avatar billede flim Nybegynder
28. april 2004 - 14:18 #3
Order By nick har du jo...

Hvis du i enden laver en LIMIT start,længde burde du i hvert fald kunne få den næste.

Dvs hvis du står ved Postman Per og gerne vil have den næste skriver du LIMIT 1,1 (starter ved næste post, og kører kun en frem)...

Jeg ved ikke lige umiddelbart hvordan du får den før :(
Avatar billede martinfrost Nybegynder
28. april 2004 - 14:27 #4
Jeg fandt på en løsning, selvom den ikke er super køn - men det funger *G*

Næste record:

$res = mysql_query("Select ID,Nick From SejTabel Where Nick > '" . $curNick . "' Order By Nick Limit 1");

og forrige record:

$res = mysql_query("Select ID,Nick From SejTabel Where Nick < '" . $curNick . "' Order By Nick Desc Limit 1");


Hehe - men thanks anyways :)
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