我有一条类似这样的SQL语句
ISNULL(revenue - expense, 0)
我正在尝试确定我的两列(收入和/或费用)是否为空白。如果一个或两个都为空,则返回0。尽管如此,我仍然收到#Error消息。
答案 0 :(得分:1)
您的声明表明:
COALESCE(revenue - expense, 0)
但是,逻辑指示您可能真的想要:
COALESCE(revenue, 0) - COALESCE(expense, 0)
也就是说,如果值是0
,则将每个人分别视为NULL
。
请注意,数字值并不是真正的“空白”(表示空字符串)。他们是NULL
。
答案 1 :(得分:0)
您可以使用COALESCE()
:
SELECT COALESCE(revenue - expense, 0)
FROM tab_name;
答案 2 :(得分:0)
答案 3 :(得分:0)
按以下方式使用合并功能
Select Coalesce(revnue,0)-coalesce(expense,0)
from t