您可以使用IF条件以及CASE语句更新MySQL。为此,让我们首先创建一个表。创建表的查询-mysql> create table UpdateWithIfCondition
−> (
−> BookId int,
−> BookName varchar(200)
−> );
现在,您可以使用insert命令在表中插入记录。查询如下-mysql> insert into UpdateWithIfCondition values(1000,'C in Depth');
mysql> insert into UpdateWithIfCondition values(1001,'Introduction to Java');
使用select语句显示表中的所有记录。查询如下-mysql> select *from UpdateWithIfCondition;
以下是输出-+--------+----------------------+
| BookId | BookName |
+--------+----------------------+
| 1000 | C in Depth |
| 1001 | Introduction to Java |
+--------+----------------------+
2 rows in set (0.00 sec)
让我们使用if条件用值“ Introduction to C”更新值“ C in Depth”,用值2000更新1001。查询如下-mysql> update UpdateWithIfCondition
−> set BookName = if(BookName = 'C in Depth','Introduction to C',BookName),
−> BookId = if(BookId = 1001,2000,BookId);
Rows matched: 2 Changed: 2 Warnings: 0
上面,我们更新了两个列值。以下是检查两个值是否已更新的查询-mysql> select *from UpdateWithIfCondition;
以下是显示我们已成功使用if更新值的输出-+--------+----------------------+
| BookId | BookName |
+--------+----------------------+
| 1000 | Introduction to C |
| 2000 | Introduction to Java |
+--------+----------------------+
2 rows in set (0.00 sec)