使用MySQL IF语句更新表中的多个值
让我们首先创建一个表-
create table DemoTable716 ( Id varchar(100), Value1 int, Value2 int, Value3 int );
使用插入命令在表中插入一些记录-
insert into DemoTable716 values('100',45,86,79); insert into DemoTable716 values('101',67,67,99); insert into DemoTable716 values('102',77,57,98); insert into DemoTable716 values('103',45,67,92);
使用select语句显示表中的所有记录-
select *from DemoTable716;
这将产生以下输出-
+------+--------+--------+--------+ | Id | Value1 | Value2 | Value3 | +------+--------+--------+--------+ | 100 | 45 | 86 | 79 | | 101 | 67 | 67 | 99 | | 102 | 77 | 57 | 98 | | 103 | 45 | 67 | 92 | +------+--------+--------+--------+ 4 rows in set (0.00 sec)
以下是更新表中多个值的查询-
update DemoTable716 set Value3=if(Value1=67 OR Value2=67,67,NULL) where Id='101'; Rows matched: 1 Changed: 1 Warnings: 0
让我们再次检查表记录-
select *from DemoTable716;
这将产生以下输出-
+------+--------+--------+--------+ | Id | Value1 | Value2 | Value3 | +------+--------+--------+--------+ | 100 | 45 | 86 | 79 | | 101 | 67 | 67 | 67 | | 102 | 77 | 57 | 98 | | 103 | 45 | 67 | 92 | +------+--------+--------+--------+ 4 rows in set (0.00 sec)