sql >> Base de Datos >  >> RDS >> Mysql

¿La mejor manera de almacenar listas ordenadas en una base de datos?

Si no está buscando una solución del tipo "mover hacia arriba/mover hacia abajo" y, por defecto, agrega al final de la lista, aquí hay algunos consejos más:

La inserción de nuevas filas en una posición específica se puede hacer así:(insertar en la posición 3)

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

Y puede eliminar de manera similar:(eliminando la posición 6)

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