查询以在MySQL中切换布尔值

San*_*kha 25 mysql

可能重复:
MySQL有没有办法用一个查询来反转一个布尔字段?

要正常更新(布尔)值,我们会检查它是否设置为false或true,并更新它,我想知道是否有查询将切换布尔值.

zer*_*kms 86

UPDATE mytbl
   SET field = !field
 WHERE id = 42
Run Code Online (Sandbox Code Playgroud)

哪里42id记录的,field是布尔字段的名称,mytbl是表名.

  • 生涩的+1!如果您愿意,也可以使用`NOT` :) (2认同)

XMe*_*Men 11

你可以使用布尔运算符这里delete是你的布尔字段.

update tab set `delete`=NOT `delete`
Run Code Online (Sandbox Code Playgroud)