MySQL能否使用if条件更新数据?
你可以使用IF条件和CASE语句来更新MySQL的数据。为此,让我们首先创建一张表。创建表的查询语句如下 –
mysql> create table UpdateWithIfCondition
−> (
−> BookId int,
−> BookName varchar(200)
−> );
Query OK, 0 rows affected (0.60 sec)
现在,您可以使用INSERT命令在表中插入记录。查询语句如下 –
mysql> insert into UpdateWithIfCondition values(1000,'深入C语言');
Query OK, 1 row affected (0.12 sec)
mysql> insert into UpdateWithIfCondition values(1001,'Java入门');
Query OK, 1 row affected (0.14 sec)
使用SELECT语句从表中显示所有记录。查询语句如下 –
mysql> select *from UpdateWithIfCondition;
结果如下所示 –
+--------+----------------------+
| BookId | BookName |
+--------+----------------------+
| 1000 | 深入C语言 |
| 1001 | Java入门 |
+--------+----------------------+
2 rows in set (0.00 sec)
用if条件将“深入C语言”更新为“深入C”并将1001更新为2000。查询语句如下 –
mysql> update UpdateWithIfCondition
−> set BookName = if(BookName = '深入C语言','深入C',BookName),
−> BookId = if(BookId = 1001,2000,BookId);
Query OK, 2 rows affected (0.43 sec)
Rows matched: 2 Changed: 2 Warnings: 0
上述查询更新了两列的值。以下查询用于检查这两个值是否已更新 –
mysql> select *from UpdateWithIfCondition;
以下输出显示我们已成功使用if更新了这两个值 –
+--------+----------------------+
| BookId | BookName |
+--------+----------------------+
| 1000 | 深入C |
| 2000 | Java入门 |
+--------+----------------------+
2 rows in set (0.00 sec)
阅读更多:MySQL 教程
极客教程