Thông thường khi NULL
được tham gia vào bất kỳ phương trình sau đó toàn bộ kết quả giải quyết vào NULL
(ví dụ SELECT 2 + NULL + 5
lợi nhuận NULL
)Hiểu SUM (NULL) trong MySQL
Cùng nắm giữ đối với trường hợp sau đây:
SELECT SUM(NULL)
lợi nhuận NULL
. Proposition #1
Điều gì sẽ xảy ra khi SUM
được sử dụng để tổng hợp cột và cột có thể chứa giá trị NULL
?
Dựa trên proposition #1
lý do tại sao đầu ra không dẫn đến NULL
.
CREATE TABLE t (age INT NULL);
INSERT INTO t (age) VALUES (15),(20), (NULL), (30), (35);
SELECT
SUM(age)
FROM t;
Output:100
Nhưng tôi đã mong NULL
.
MySQL có bỏ qua các giá trị NULL trong trường hợp này không?
http://sqlfiddle.com/#!9/3f99bb/2
Cột có giá trị 'NULL' về cơ bản là' EMPTY', có nghĩa là cột của nó không được tính vào SUM. Rất nhiều lược đồ cơ sở dữ liệu sử dụng 'NULL' làm giá trị rỗng. Hãy tưởng tượng những người không thể tính toán 'SUM' của các cột khác của họ nữa. – Xatenev
@Xatenev sau đó như ông chỉ, 'SELECT 2 + NULL + 5' nên là' 7'; – Jigar
Không. Nó trả về 'NULL' @Jigar –