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

Hàm SUM() trong MySQL xử lý cột kiểu ký tự như thế nào?

Kết quả của SUM() trên cột kiểu chuỗi

Khi hàm SUM() nhận một cột có kiểu dữ liệu ký tự (character type) làm đối số, nó sẽ trả về 0 (không phải NULL) và phát ra một cảnh báo (warning).

Ví dụ

Bảng Social có dữ liệu:

mysql> SELECT * FROM Social;
+------+-------+
| Id   | Name  |
+------+-------+
| 100  | Rahul |
+------+-------+

Thực hiện SUM(Name):

mysql> SELECT SUM(Name) FROM Social;
+-----------+
| SUM(Name) |
+-----------+
| 0         |
+-----------+
1 row in set, 1 warning (0.00 sec)

MySQL cố gắng chuyển đổi chuỗi sang số để tính tổng, nhưng vì không thể chuyển đổi, nó trả về 0 và cảnh báo.