MySQL:更新将字段设置为0的所有行,但将一行的字段设置为1

Joe*_*oel 11 php mysql

是否有一种有效的方法可以将选择的行字段更新为0,但是根据ID将其中一行设置为1.

基本上,我在数据库中有多个对象,并且我想在哪个"inuse"之间切换,因此查询将其中一行(按id)设置为inuse = 1,其他行设置为inuse = 0.

谢谢 :)

cha*_*aos 22

UPDATE `table`
SET `inuse` = (`id` = 23)
Run Code Online (Sandbox Code Playgroud)


Art*_*kii 12

当然

UPDATE table SET inuse=IF(id=ABCD, 1, 0)
Run Code Online (Sandbox Code Playgroud)

如果id是ABCD,则将inuse字段设置为1,否则设置为0.