大佬教程收集整理的这篇文章主要介绍了通过 SQL Pivot 将“NULL”值替换为“0”,大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
美好的一天!我被我的查询困住了。我想将我的 NulL 值替换为零。
我的语法:
SELECT * FROM (SELECT (B.FirsT_name + ' ' + B.MIDDLE_INITIAL + ' ' + B.SURname) As 'name',DATEname(MONTH,A.COVERAGE_DATE) As 'Month',SUM(ISNulL((A.AMOUNT),0)) As 'Amount'
FROM Transactions A,PledgerProfile B
WHERE A.PLEDGER_ID = B.PLEDGER_ID AND DATEname(Year,A.COVERAGE_DATE) = '2021'
GROUP BY (B.FirsT_name + ' ' + B.MIDDLE_INITIAL + ' ' + B.SURname),A.COVERAGE_DATE)) AS MonthlySalesData
PIVOT(SUM(AMOUNT)
FOR Month IN ([January],[February],[march],[April],[May],[June],[July],[August],[September],[October],[November],[December])) AS MnamePivot
给朋友打电话。有人可以查看它并检查我的语法吗?我感谢任何反馈。谢谢!
我的输出:
您可以通过 SELECT *
IsNull()
示例
SELECT Name,[January] = isnull([January],0),[February] = isnull([February],[March] = isnull([March],[April] = isnull([April],[May] = isnull([May],[June] = isnull([June],[July] = isnull([July],[August] = isnull([August],[September] = isnull([September],[October] = isnull([October],[November] = isnull([November],[December] = isnull([December],0)
....
,
只需使用条件聚合:
select (pp.FIRST_NAME + ' ' + pp.MIDDLE_INITIAL + ' ' + pp.SURNAME) As 'Name',sum(case when month(t.coverage_date) = 1 then 1 else 0 end) as jan,sum(case when month(t.coverage_date) = 2 then 1 else 0 end) as feb,. . .
from Transactions t join
PledgerProfile pp
on pp.PLEDGER_ID = t.PLEDGER_ID
where t.coverage_date >= '2021-01-01' and t.coverage_date < '2022-01-01'
group by (pp.FIRST_NAME + ' ' + pp.MIDDLE_INITIAL + ' ' + pp.SURNAME);
不需要子查询。
注意事项:
FROM
子句中使用逗号。 始终使用正确、明确、标准、可读的 JOIN
语法。a
和 b
。以上是大佬教程为你收集整理的通过 SQL Pivot 将“NULL”值替换为“0”全部内容,希望文章能够帮你解决通过 SQL Pivot 将“NULL”值替换为“0”所遇到的程序开发问题。
如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。
本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。