我有这个表(由SQL查询):
Row 1 Row 2
2 1
3 NULL
Run Code Online (Sandbox Code Playgroud)
我想减去2列,所以我只选择这样:
Select Row1 - Row2
From table
Run Code Online (Sandbox Code Playgroud)
但后来我得到了这个结果:
1
NULL
Run Code Online (Sandbox Code Playgroud)
代替:
1
3
Run Code Online (Sandbox Code Playgroud)
如何才能获得最后的结果呢?
Tec*_*hDo 17
请试试:
SELECT ISNULL([Row 1], 0) - ISNULL([Row 2], 0) from YourTable
Run Code Online (Sandbox Code Playgroud)
有关更多信息,请访问ISNULL
你得到这个的原因是因为任何带有NULL的数学运算都会产生NULL因此在执行操作时,所有值都应该被读为NULL = 0.
使用ISNULL()
于是
SELECT ISNULL([Row 1], 0) - ISNULL([Row 2], 0) from YourTable
Run Code Online (Sandbox Code Playgroud)