Mysql SELECT inside UPDATE

前端 未结 4 1828
UPDATE forms SET

pos = (SELECT MIN(pos)-1 FROM forms)

WHERE id=$id

This doesn\'t work, error message:

**You can\'t specify target         


        
4条回答
  •  佛祖请我去吃肉
    2020-12-31 20:15

    You could also try:

    START TRANSACTION;
    SET @newMin := MIN(pos)-1 FROM forms;
    UPDATE forms SET pos=@newMin WHERE id='$id';
    COMMIT;
    

提交回复
热议问题