使用另一个表ORACLE的值的总和更新表t1的一列

时间:2014-09-10 09:45:25

标签: sql oracle

使用ORACLE,如何使用表t2的列的值的总和更新表t1的一列,并具有以下条件:

表t1(主键=(ID1,ID2)):

    ID1 ID2  REFU
    a    x    0
    b    y    0

表t2(主键=(ID1,ID2,ID3)):

    ID1  ID2  ID3  REFU_ID3
    a     x     m     2
    b     y     n     1
    a     x     o     4
    b     y     p     6

我想更新表t1,以便得到:

    ID1 ID2  REFU
    a    x    (2+4=6)
    b    y    (1+6=7)

注意:大约有360对(a,x)需要更新

1 个答案:

答案 0 :(得分:0)

试试这个:

UPDATE t1 SET
       REFU = (SELECT SUM(REFU_ID3) FROM t2 WHERE t1.ID1=t2.ID1 AND t1.ID2=t2.ID2)