【问题标题】:replace the null value in result table to "0" in sql pivot table将结果表中的空值替换为 sql 数据透视表中的“0”
【发布时间】:2021-02-16 06:19:10
【问题描述】:

我有以下查询,它将生成数据透视表,但结果我需要用“0”(零)替换空值,请帮助我如何做同样的事情:

SELECT * FROM (
  SELECT
    [Date],
    Department,
    Count(Action_Status) as Status
  FROM Semicon_NPD
  where Action_Status = 'Pending'
   group by Department,[Date]
) StatusCount
PIVOT (
  SUM([Status])
  FOR [Department]
  IN (
    [Milling],
    [Turning],
    [EDM]
  )
)
 AS PivotTable 

结果表:

【问题讨论】:

  • @TT 非常感谢..现在它解决了你能发布与答案相同的答案以便我接受吗?

标签: sql-server tsql null pivot


【解决方案1】:

您在顶部有一个SELECT *。更改它以选择结果集中的特定列,并使用 ISNULLCOALESCE 返回 0 而不是 NULL。像这样:

SELECT Date,Milling=ISNULL(Milling,0),Turning=ISNULL(Turning,0),EDM=ISNULL(EDM,0) 
FROM (
  SELECT
    [Date],
    Department,
    Count(Action_Status) as Status
  FROM Semicon_NPD
  where Action_Status = 'Pending'
   group by Department,[Date]
) StatusCount
PIVOT (
  SUM([Status])
  FOR [Department]
  IN (
    [Milling],
    [Turning],
    [EDM]
  )
)  AS PivotTable 

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2022-08-16
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-11-24
    • 1970-01-01
    相关资源
    最近更新 更多