Mysql
 sql >> Base de données >  >> RDS >> Mysql

La meilleure façon de stocker des listes ordonnées dans une base de données ?

Si vous ne cherchez pas une sorte de solution "monter/descendre", puis que vous ajoutez par défaut en bas de la liste, voici quelques conseils supplémentaires :

L'insertion de nouvelles lignes dans une position spécifique peut se faire comme ceci :(insertion à la position 3)

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

Et vous pouvez supprimer de la même manière :(suppression de la position 6)

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