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

Nhân cột với hàng NULL trong MySQL?

Để nhân với hàng NULL, bạn có thể sử dụng COALESCE (). Đầu tiên chúng ta hãy tạo một bảng -

mysql> create table DemoTable1842
     (
     NumberOfItems int,
     Amount int
     );
Query OK, 0 rows affected (0.00 sec)

Chèn một số bản ghi vào bảng bằng lệnh chèn -

mysql> insert into DemoTable1842 values(10,40);
Query OK, 1 row affected (0.00 sec)
mysql> insert into DemoTable1842 values(20,5);
Query OK, 1 row affected (0.00 sec)
mysql> insert into DemoTable1842 values(NULL,10);
Query OK, 1 row affected (0.00 sec)

Hiển thị tất cả các bản ghi từ bảng bằng câu lệnh select -

mysql> select * from DemoTable1842;

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

+---------------+--------+
| NumberOfItems | Amount |
+---------------+--------+
|            10 |     40 |
|            20 |      5 |
|          NULL |     10 |
+---------------+--------+
3 rows in set (0.00 sec)

Đây là truy vấn để nhân cột với NULL hàng -

mysql> select NumberOfItems,Amount,
     coalesce(NumberOfItems,1)*Amount as Total
     from DemoTable1842;

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

+---------------+--------+-------+
| NumberOfItems | Amount | Total |
+---------------+--------+-------+
|            10 |     40 |   400 |
|            20 |      5 |   100 |
|          NULL |     10 |    10 |
+---------------+--------+-------+
3 rows in set (0.00 sec)