2016-04-20 34 views
1

我试图用0代替空值,然后对此字段进行计算,但无法使其工作。在下面的所有例子中,我仍然得到一个空值。SQL在查询中用NULL代替NULL

任何关于如何写这个的建议?

这是我已经试过:

select 
ISNULL(posamt, 0) as total1, 
    coalesce (posamt, 0) as total2,  
    case when PosAmt = 0 then '0' else CONVERT(varchar(11), isnull(posamt, 0))end as total3, 
    CONVERT(varchar(11),isnull(posamt,0)) as total4 
from mytable 

enter image description here

+0

你在用什么桌子?剩余的查询在哪里? – Dresden

+8

这些应该可以工作。我的猜测是该值是“NULL”字符串,而不是“NULL”值。 –

+0

发布我的其余查询。 – BIReportGuy

回答

0

我相信你需要有ISNULL(posamt,0)的情况下发言。当posamt为NULL时,它永远不会等于0。