Computer >> Hướng Dẫn Máy Tính >  >> Lập Trình >> MySQL

Đặt điều kiện khi cộng giá trị cột trong MySQL với hàm IF()

Để đặt điều kiện khi cộng giá trị cột, hãy sử dụng hàm IF() của MySQL. Hãy cùng tạo một bảng trước:

mysql> CREATE TABLE DemoTable (
    -> Value1 INT,
    -> Value2 INT,
    -> Value3 INT
    -> ); Query OK, 0 rows affected (0.64 sec)

Chèn một số bản ghi vào bảng bằng lệnh 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)

Hiển thị tất cả bản ghi từ bảng bằng lệnh SELECT:

mysql> SELECT * FROM DemoTable;

Kết quả sẽ như sau:

+--------+--------+--------+
| 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)

Dưới đây là truy vấn để đặt điều kiện khi cộng giá trị cột:

mysql> SELECT Value1 + Value2 + IF(Value3 > 0, Value3, 0) FROM DemoTable;

Kết quả sẽ như sau:

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