Mysql
 sql >> база данни >  >> RDS >> Mysql

Поддържане/актуализиране на реда на записи в mysql

Би ли го направило нещо подобно?

UPDATE items 
SET position = CASE position 
  WHEN $oldpos THEN $newpos 
  ELSE position + SIGN($oldpos-$newpos)
 END
WHERE position BETWEEN LEAST( $newpos, $oldpos ) 
                AND GREATEST( $newpos, $oldpos );

Тествах го няколко пъти и изглежда работи.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. SQL IN израз - запазвайте дубликати при връщане на резултати

  2. Password_verify в PHP

  3. Как да свържа R с MySQL или как да инсталирам RMySQL пакет?

  4. Как да запишете бъдещи(!) дати в база данни

  5. Mysql създава база данни с ново местоположение на базата данни