我想将查询的所有空白列设置为“0”,以便我可以将其用于进一步的计算。
我的查询如下:
SELECT
SUM(Erstattungen.Betrag) AS Gesamtbetrag_Erstattungen,
Mitarbeiter.Referent_Name
FROM
Mitarbeiter
LEFT JOIN
Erstattungen ON Mitarbeiter.Mitarbeiter_ID = Erstattungen.Mitarbeiter_ID
GROUP BY
Mitarbeiter.Referent_Name, Erstattungen.Mitarbeiter_ID;
并且由于左连接而返回Gesamtbetrag_Erstattungen
的空列。
我想用“0”填充这些空列,而不是在那里留空格。
这样做有什么好办法?也许使用额外的更新功能?我怎么能这样做?
提前致谢。
答案 0 :(得分:0)
“空”字段是由NULL
引起的LEFT JOIN
。由于LEFT JOIN
,所有聚合列都应来自第一个表。
然后,您可以使用NZ()
替换值:
SELECT NZ(Sum(e.Betrag), 0) AS Gesamtbetrag_Erstattungen, m.Referent_Name
FROM Mitarbeiter as m LEFT JOIN
Erstattungen as e
ON m.Mitarbeiter_ID = e.Mitarbeiter_ID
GROUP BY m.Referent_Name, m.Mitarbeiter_ID;
表别名使查询更易于编写和读取。请注意使用m.Mitarbeiter_ID
而非e.Mitarbeiter_ID
和NZ()
的更改。