将结果 table 中的空值替换为 sql 中的“0” pivot table
replace the null value in result table to "0" in sql pivot table
我有下面的查询将生成数据透视表 table ,但结果我需要用 "0"(zero) 替换空值,请帮助我如何做同样的事情:
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
结果table:
您在顶部有一个 SELECT *
。将其更改为 select 结果集中的特定列,并使用 ISNULL
or COALESCE
到 return 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
我有下面的查询将生成数据透视表 table ,但结果我需要用 "0"(zero) 替换空值,请帮助我如何做同样的事情:
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
结果table:
您在顶部有一个 SELECT *
。将其更改为 select 结果集中的特定列,并使用 ISNULL
or COALESCE
到 return 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