我的table1如下:
Col1 Bal
-------------------
1 0
2 0
3 0
4 0
Col1是这里的关键。
我的table2如下:
Col1 Bal Date
---------------------
1 5 x
1 10 y
1 7 z
3 8 p
3 9 m
Col1是两个表中的连接列。
我想用第2表中的bal的总和更新第一张表中的bal。
这是什么sql语句:
update table1 a set a.bal=(select sum(b.bal) from table2) where
我迷路了!
更新后,table1应为:
Col1 Bal
-------------------
1 22
2 0
3 17
4 0
答案 0 :(得分:1)
从documentation开始,看起来你可以在DB2中使用表别名:
update table1 a
set bal = coalesce(
(
select sum(b.bal)
from table2 as b
where a.col1 = b.col1
), 0)