当一个类型有两个具有null值和有效值的组时,获取字段的有效值



我有一个如下表:

ID  Amt type            accnum  rcnum   amt
1   Recovery type 1                 [NULL]  45
1   Total recovery                  [NULL]  34
1   Current Type 1      2345        123     23
1   Total current type              [NULL]  12
1   Current type 1                  [NULL]  78
1   Current rvrsl                   [NULL]  -908

现在,我想创建如下所示,其中总结了每种类型的amt,但如果存在,将填充有效值,否则将填充NULL/空白:

ID  Amt type            accnum  rcnum   amt
1   Recovery type 1                 [NULL]  45
1   Total recovery                  [NULL]  34
1   Current Type 1      2345        123     101
1   Total current type              [NULL]  12
1   Current rvrsl                   [NULL]  -908

我正在尝试左加入,但我不确定如何在不丢掉其他记录的情况下实现这一目标。

这看起来像聚合:

select id, amt_type, accnum, max(rcnum), sum(amt)
from t
group by id, amt_type, accnum;

聚合函数忽略NULL值。

最新更新