1

在这个简单的数据透视示例 (T-SQL) 中,我尝试将 NULL 替换为 0。我尝试了所有找到的建议,但仍然得到 NULL。如何用 0 替换 PIVOT 中的 NULL 值

select *
from 
 (
       select ISNULL([vendid],0)as [vendid],isnull(origdocamt,0)as origdocamt 
        from APDoc
 ) X
pivot
(sum(origdocamt) for vendid in ([AAA],[BBB])) As P

输出


AAA BBB

45800 空

4

2 回答 2

3

您将希望在最终选择中使用IsNullCoalesce执行替换:null

select 
  [AAA] = IsNull([AAA], 0),
  [BBB] = IsNull([BBB], 0)
from 
(
  select [vendid],
    origdocamt 
  from APDoc
) X
pivot
(
  sum(origdocamt) 
  for vendid in ([AAA],[BBB])
) As P
于 2013-11-07T18:38:00.510 回答
0

NULL您看到的's 是因为新的价值观:

select ISNULL([AAA],0) as [AAA], ISNULL([BBB],0) as [BBB]
from 
 (
       select ISNULL([vendid],0)as [vendid],isnull(origdocamt,0)as origdocamt 
        from APDoc
 ) X
pivot
(sum(origdocamt) for vendid in ([AAA],[BBB])) As P
于 2013-11-07T18:38:12.410 回答