Mysql
 sql >> Datenbank >  >> RDS >> Mysql

Beste Möglichkeit, geordnete Listen in einer Datenbank zu speichern?

Wenn Sie nicht nach einer Art "nach oben / nach unten"-Lösung suchen und dann standardmäßig am Ende der Liste hinzufügen, sind hier ein paar weitere Hinweise:

Das Einfügen neuer Zeilen an einer bestimmten Position kann folgendermaßen erfolgen:(Einfügen an Position 3)

UPDATE usermovies SET order_number = ordernumber + 1 
   WHERE ordernumber > 3 and user_id = ?;
INSERT INTO usermovies VALUES (?, 3, ?);

Und Sie können auf ähnliche Weise löschen:(Position 6 löschen)

DELETE usermovies WHERE order_numer = 6 and user_id=?;
UPDATE usermovies SET order_number = ordernumber - 1 
   WHERE ordernumber > 6 and user_id = ?;