包含以下值的表:
Column1 Column2
1 NULL
NULL 4
2 NULL
NULL 5
3 6
以下查询:
SELECT
SUM([Column1] + [Column2] )
FROM [myTable]
9
返回一个应该何时返回的值21
。为什么?它是如何得出价值的?
我知道 SUM 可以通过ISNULL
像这样添加来纠正:
SELECT
SUM(ISNULL([Column1], 0) + ISNULL([Column2], 0))
FROM [myTable]
但我想知道价值背后的逻辑9