例如,有一个表T
col1 col2 col3 col4 col5 col6
a x y z s0 s2
b x y z s1 s3
c x y z s4 s5
a x1 y1 z1 s6 s7
b x1 y1 z1 s8 s9
c x1 y1 z1 s8 s9
更新后,它应该看起来像
col1 col2 col3 col4 col5 col6
a x y z s0 s2
b x y z s1 s3
c x y z s0+s1 s2+s3
a x1 y1 z1 s6 s7
b x1 y1 z1 s8 s9
c x1 y1 z1 s8+s6 s9+s7
答案 0 :(得分:1)
对于用于转换的规则,您有点模糊。以下可能会做你想要的:
update t
set col5 = (select sum(col5) from t2 where t2.col2 = t.col2 and t2.col1 in ('A', 'B')),
col6 = (select sum(col6) from t2 where t2.col2 = t.col2 and t2.col1 in ('A', 'B'))
where col1 = 'C';