Hallo zusammen hier im Forum,
sitze gerade vor einer kniffligen Aufgabe, die meinen Hirnschmalz überfordert ;)
Aber für euch sicher lösbar.
Ich führe folgende Abfrage aus, die mir die primäre ID ausgibt, an der Stelle mein Pointer (Zähler/Punkt der Reihenfolge nach einer Sortierung) gerade ist.
Code:
$abfrage_position = "SELECT z.rank FROM (
SELECT t.id, @rownum := @rownum + 1 AS rank
FROM tabelle t, (SELECT @rownum := 0) r
ORDER BY id ASC
) as z WHERE id='".$id."';";
$ergebnis_position = mysql_query($abfrage_position);
while($row_position = mysql_fetch_object($ergebnis_position)) {
$pointer = $row_position->rank;
}
Funktionier auch einwandfrei.
D.h. wenn ich ihm die ID=5 mitgebe, gibt er mir den dazugehörigen Pointer (Anzahl des Datensatz nach der Reihenfolge sortiert nach ID (ASC) aus.
Soweit so gut.
Jetzt brauche ich aber genau die umgekehrte Variante.
D.h. ich habe den Pointer und benötige die dazugehörige ID. Also wieder in der gleichen Suchreihenfolge wie bei der ersten Abfrage. Einfach nur umgekehrt.
Wer kann mir bei diesem SQL Statement helfen?
Danke im Voraus, laza