Computer >> Máy Tính >  >> Lập trình >> MySQL

Tôi có thể sử dụng SUM () với IF () trong MySQL không?

Có, bạn có thể sử dụng SUM () với IF () trong MySQL. Trước tiên, hãy để chúng tôi tạo một bảng demo:

mysql> create table DemoTable
(
   Value int,
   Value2 int
);
Query OK, 0 rows affected (0.51 sec)

Sau đây là truy vấn để chèn một số bản ghi trong bảng bằng cách sử dụng lệnh insert:

mysql> insert into DemoTable values(100,400);
Query OK, 1 row affected (0.13 sec)
mysql> insert into DemoTable values(100,400);
Query OK, 1 row affected (0.18 sec)
mysql> insert into DemoTable values(400,100);
Query OK, 1 row affected (0.14 sec)

Sau đây là truy vấn để hiển thị các bản ghi từ bảng bằng lệnh select:

mysql> select *from DemoTable;

Điều này sẽ tạo ra kết quả sau

+-------+--------+
| Value | Value2 |
+-------+--------+
|   100 |    400 |
|   100 |    400 |
|   400 |    100 |
+-------+--------+
3 rows in set (0.00 sec)

Sau đây là truy vấn sử dụng SUM () cùng với IF () để tính toán có bao nhiêu số 100 và 400 trong bảng trên:

mysql> SELECT SUM(IF(Value=100, 1, 0) + IF(Value2=100, 1, 0)) as Hundred,
SUM(IF(Value=400, 1, 0) + IF(Value2=400, 1, 0)) as FourHundred
FROM DemoTable;

Điều này sẽ tạo ra kết quả sau:

+---------+--------------+
| Hundred | FourHundred  |
+---------+--------------+
|       3 |            3 |
+---------+--------------+
1 row in set (0.00 sec)