在 MySQL 中切换 int 字段值的简单方法

mysqlmysqli database

要切换 int 字段的值,可以使用带有 if() 的 update 命令。语法如下 −

update yourTableName set yourColumnName = IF(yourColumnName = 0, 1, 0);

要理解上述切换语法,请创建一个包含一些 int 值的表。创建表的查询如下 −

mysql> create table ToggleDemo
   −> (
      −> IsOnOrOff int
   −> );
Query OK, 0 rows affected (0.53 sec)

让我们借助 insert 命令在表中插入 int 值。查询如下 −

mysql> insert into ToggleDemo values(1);
Query OK, 1 row affected (0.25 sec)

mysql> insert into ToggleDemo values(0);
Query OK, 1 row affected (0.15 sec)

mysql> insert into ToggleDemo values(1);
Query OK, 1 row affected (0.17 sec)

mysql> insert into ToggleDemo values(0);
Query OK, 1 row affected (0.11 sec)

mysql> insert into ToggleDemo values(1);
Query OK, 1 row affected (0.10 sec)

mysql> insert into ToggleDemo values(0);
Query OK, 1 row affected (0.09 sec)

显示上面插入的所有记录 −

mysql> select *from ToggleDemo;

以下是输出 −

+-----------+
| IsOnOrOff |
+-----------+
|         1 |
|         0 |
|         1 |
|         0 |
|         1 |
|         0 |
+-----------+
6 rows in set (0.00 sec)

现在您可以实现我们在开头讨论的语法来切换 int 值。查询如下 −

mysql> update ToggleDemo set IsOnOrOff = IF(IsOnOrOff = 0, 1, 0);
Query OK, 6 rows affected (0.12 sec)
Rows matched: 6 Changed: 6 Warnings − 0

现在您可以检查列值是否已切换。查询如下 −

mysql> select *from ToggleDemo;

以下是显示切换成功的输出 −

+-----------+
| IsOnOrOff |
+-----------+
|         0 |
|         1 |
|         0 |
|         1 |
|         0 |
|       1 |
+-----------+
6 rows in set (0.00 sec)

相关文章