在 MySQL 中新增列值時設定條件?


若要新增列值時設定條件,請使用 MySQL IF()。我們先建立一個表——

mysql> create table DemoTable
   -> (
   -> Value1 int,
   -> Value2 int,
   -> Value3 int
   -> );
Query OK, 0 rows affected (0.64 sec)

使用 insert 命令向表中插入一些記錄——

mysql> insert into DemoTable values(10,20,-30);
Query OK, 1 row affected (0.20 sec)
mysql> insert into DemoTable values(50,60,90);
Query OK, 1 row affected (0.18 sec)
mysql> insert into DemoTable values(100,200,400);
Query OK, 1 row affected (0.09 sec)
mysql> insert into DemoTable values(30,40,-50);
Query OK, 1 row affected (0.16 sec)
mysql> insert into DemoTable values(70,80,-1);
Query OK, 1 row affected (0.24 sec)

使用 select 語句從表中顯示所有記錄——

mysql> select * from DemoTable;

這將產生以下輸出——

+--------+--------+--------+
| Value1 | Value2 | Value3 |
+--------+--------+--------+
|     10 |     20 |    -30 |
|     50 |     60 |     90 |
|    100 |    200 |    400 |
|     30 |     40 |    -50 |
|     70 |     80 |     -1 |
+--------+--------+--------+
5 rows in set (0.00 sec)

這是在新增列值時設定條件的查詢——

mysql> select Value1+Value2+if(Value3 > 0,Value3,0) from DemoTable;

這將產生以下輸出——

+---------------------------------------+
| Value1+Value2+if(Value3 > 0,Value3,0) |
+---------------------------------------+
|                                    30 |
|                                   200 |
|                                   700 |
|                                    70 |
|                                   150 |
+---------------------------------------+
5 rows in set (0.00 sec)

更新於: 2020 年 2 月 26 日

251 次瀏覽

開啟你的 職業生涯

透過完成課程獲得認證

開始
廣告
© . All rights reserved.