我有一个包含数值和NaN的表。求和时,如果所选值包含NaN,则结果将为NaN。有没有办法让postgresql在求和时将它们视为0而不是NaN?或者我只需要将表中的所有NaN转换为0或Null?
4ktjp1zp1#
使用NULLIF,例如:
NULLIF
with my_table(col) as ( values (1::numeric),(2),('NaN') ) select sum(col) as original, sum(nullif(col, 'NaN')) as corrected from my_table; original | corrected ----------+----------- NaN | 3 (1 row)
1条答案
按热度按时间4ktjp1zp1#
使用
NULLIF
,例如: