我有以下查询:

SELECT *
FROM Table1
PIVOT
(
  SUM(Value)
  FOR [Period] IN ([06/1/2007],[07/1/2007])
)
AS p

返回的某些行为空,但我想将它们替换为0。

我已经尝试过SUM(ISNULL(Value,0)) as Val,但是没有用。 (这是不正确的语法)

最佳答案

哦,我在错误的地方使用了ISNULL

查询应如下所示:

SELECT ID,ISNULL([06/1/2007],0), ISNULL([07/1/2007],0)
FROM Table1
PIVOT
(
  SUM(Value)
  FOR [Period] IN ([06/1/2007],[07/1/2007])
)
AS p

关于sql-server - 替换SQL Pivot中的空值,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/3297132/

10-13 03:15