在不使用函数的情况下将Null替换为0?

时间:2013-11-01 14:32:11

标签: sql function null sybase isnull

我想替换表中的空值但不使用isnull之类的函数,因为它处理大量数据并减慢它的速度。

无处不在网上说isnull和coalesce但是没有使用这些功能有任何办法。 我需要这个,因为查询

OPENING_OTHER + OPENING_FEE + OPENING_INT AS TOTAL_BALANCE

如果一个值为NULL,则总余额始终为空

干杯

1 个答案:

答案 0 :(得分:2)

不,你怎么能不做任何事情呢?

您可以永久地将NULL值替换为0,但这会浪费大量存储空间。

如果您使用为此目的而设计的内置函数,则在SELECT语句中转换数据并不是非常昂贵。


使用coalesce将是最快,最有效和最快捷的方式。

coalesce(OPENING_OTHER, 0) + coalesce(OPENING_FEE, 0) + 
    coalesce(OPENING_INT, 0) AS TOTAL_BALANCE

事实上,我建议coalesce的实际成本太小而难以衡量。