-6

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

网上到处都说 isnull 和 coalesce 但有什么办法不使用这些功能。我需要这个,因为查询

OPENING_OTHER + OPENING_FEE + OPENING_INT AS TOTAL_BALANCE

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

干杯

4

1 回答 1

2

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

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

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


使用coalesce将是最快、最有效和最方便的方法。

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

事实上,我认为实际成本coalesce是如此之小以至于难以衡量。

于 2013-11-01T14:34:33.380 回答