Thomas Schmieder: MySQL: Workaround für NEXT und PREVIOUS gesucht

Beitrag lesen

Hallo Gemeinde,

ich bin hier am abko...

...chen von Teewasser. Denn man sagt ja, anwarten und Tee trinken.

Ich suche die beste Lösung für  Next und Previous

Szenario:
MySQL-Tabelle mit Adressen. Adresse wird gelesen und angezeigt. Nun will ich die nächste in Reihe. Solange die Sortierung auf der ID steht, ist das kein Problem,

Select * from adresse where ID > '$ID' Limit 1

Oder man versucht eben mit ID='$ID' zuzugreifen. Wenn der Satz gelöscht ist, muss man das eben sooft wiederholen, bis ein Ergebnis dabei herauskommt.

Nun das Problem:
Ich möchte die Adressen z.B. nach dem Nachnamen sortiert anzeigen. Nachnamen können aber Duplicates haben. Da würde ich mit der Abfrage

Select * from adresse where NACHNAME >= ($NACHNAME) Limit 1,1

nicht vom Fleck kommen, wenn da fünf Meyers in der Tabelle sind. Außerdem könnte mir in der Zwischenzeit jemand den ersten Meyer geklaut haben, dann stimmt das Ergebnis auch nicht mehr.

Was tun???

Wieso gibt es in SQL keine Abfrage auf NEXT und PREVIOUS? Habe ich da was übersehen? Jede vernünfte DBE hat sowas. Da kann ich mit dem Schlüssel des vorhandenen Satzes und der Angabe der gewünschten Sortierung einsteigen und den Nachfolger oder Vorgänger suchen lassen.

Gruß

Tom