Hallo zusammen,
es geht um folgendes: Ich habe in meiner DB eine Spalte "Position". In dieser Spalte wird nummerisch die Position der einzelnen Einträge gespeichert, also in welcher Reihenfolge diese angezeigt werden sollen.
Wenn jetzt ein neuer Eintrag gespeichert wird, muss logischerweise auch eine passende Position (MAX +1) eingetragen werden.
Das Problem hierbei ist, dass es für jeden Eintrag ParentIDs gibt und je nach ParentID die Position anders aussieht. (Ein auto_inc fällt also weg)
Daher muss ich zuerst die MAX-Position auslesen und dann wieder im Insert verwenden. Das mache ich über zwei verschiedene MySQL-Anfragen in php. Es geht aber bestimmt auch eleganter.
Sowas in die Richtung:
Wenn ich das direkt im phpMyAdmin ausführe, erhalte ich einen "SQL Syntax error".
Wie genau müssen solche verschachtelten Anfragen aussehen?
DANKE!!!
strauberry
es geht um folgendes: Ich habe in meiner DB eine Spalte "Position". In dieser Spalte wird nummerisch die Position der einzelnen Einträge gespeichert, also in welcher Reihenfolge diese angezeigt werden sollen.
Wenn jetzt ein neuer Eintrag gespeichert wird, muss logischerweise auch eine passende Position (MAX +1) eingetragen werden.
Das Problem hierbei ist, dass es für jeden Eintrag ParentIDs gibt und je nach ParentID die Position anders aussieht. (Ein auto_inc fällt also weg)
Daher muss ich zuerst die MAX-Position auslesen und dann wieder im Insert verwenden. Das mache ich über zwei verschiedene MySQL-Anfragen in php. Es geht aber bestimmt auch eleganter.
Sowas in die Richtung:
PHP-Code:
INSERT INTO Datenbank (Titel,Position) VALUES("Test", (SELECT MAX(Position) FROM Datenbank WHERE PID=0)+1)
Wie genau müssen solche verschachtelten Anfragen aussehen?
DANKE!!!
strauberry
Kommentar