Mailinglisten-Archive |
Hallo liebe Liste, ich habe folgendes Problem: Ich möchte eine explizite Reihenfolge von eigentlich eher alphabetisch sortierten Daten erzeugen lassen. Dazu habe ich eine weitere Spalte namens "position" eingefügt und lasse diese dann von 0 - N hochzählen. Funktioniert. Wenn jetzt aber ein neuer Datensatz eingepflegt werden soll, der meinetwegen als neue Positionierung die Stelle 5 erhalten soll, müssen ja alle anderen Datensätze position >= 5 um einen Zähler hochgesetzt werden. Wie erreiche ich das in einer einzigen SQL-Anfrage? Kann man eine UPDATE-Anweisung relativ zum *jeweiligen* Datenfeldinhalt generieren? Also sowas wie Update alle Datensätze, die position >= 5 haben, mit jeweils position = position + 1? Bisher durchlaufe ich eine Schleife und setze die jeweiligen Positionen zeilenweise um 1 hoch, was aber schnell mal sehr umfangreich werden könnte... Über einen Tipp würde ich mich sehr freuen. Grüße Tim Hildebrandt -- Infos zur Mailingliste, zur Teilnahme und zum An- und Abmelden unter -->> http://www.4t2.com/mysql
php::bar PHP Wiki - Listenarchive