在 Snowflake 中连接表时添加计算列

Adding a calculated column while joining tables in Snowflake

我有 4 个表 A、B、C 和 D,每个表有 3 列

A-  aa, ab, ac

B-  ba, bb, bc

C-  ca, cb, cc

D-  da, db, dc 

我需要连接 4 个表并添加一个新的计算列 (aa + ab + ac)。我的查询是

SELECT A.aa, A.ab, A.ac, B.ba, B.bb, B.bc, C.ca, C.cb, C.cc, D.da, D.db, D.dc,(A.aa + A.ab + A.ac) AS total

FROM A 

LEFT JOIN B

ON A.aa = B.ba

LEFT JOIN C

ON A.ab = C.ca

LEFT JOIN D

ON A.aa = D.da;

表连接良好,但所有行的计算列 returns NULL。我哪里出错了,还有其他方法吗?

为了完整起见,将@Fred 的答案从评论移至答案:

Seems like some of aa, ab, ac are NULLs so sum is therefore NULL. Apply ZEROIFNULL() function to each column before summing, to treat missing values as zero?

https://docs.snowflake.com/en/sql-reference/functions/zeroifnull.html