如何在Oracle中更新一个表中的多个列

如何在Oracle中更新一个表中的多个列,oracle,updates,Oracle,Updates,我对Oracle非常陌生。我需要根据与另一个表不同的条件更新一个表中的两列: 表1: C1 = Hello, C2 = Jane, C3 = Goodbye, C4 = John OR C1 = Brown, C2 = Cat, C3 = Black, C4 = Dog T2.C1 = T1.C1 and T2.C2 = T1.C2 when T2.C1 = T1.C3 and T2.C2 = T1C4 表2: C1 = Hello, C2 = Jane, C3 = Goodbye, C4

我对Oracle非常陌生。我需要根据与另一个表不同的条件更新一个表中的两列:

表1

C1 = Hello, C2 = Jane, C3 = Goodbye, C4 = John OR
C1 = Brown, C2 = Cat, C3 = Black, C4 = Dog
T2.C1 = T1.C1 and T2.C2 = T1.C2 when T2.C1 = T1.C3 and T2.C2 = T1C4
表2

C1 = Hello, C2 = Jane, C3 = Goodbye, C4 = John OR
C1 = Brown, C2 = Cat, C3 = Black, C4 = Dog
T2.C1 = T1.C1 and T2.C2 = T1.C2 when T2.C1 = T1.C3 and T2.C2 = T1C4
我知道如何在多个update语句中实现这一点。有可能一次完成吗?如果是,怎么做

UPDATE 
  (SELECT t1.c1 as c1_new, t1.c2 as C2_new, t2.c1 as c1_old, t2.c2 as c2_old
   FROM t1, t2
   WHERE t1.c3 = t2.c1 and t2.c2 = t1.c4) t
SET t.c1_old = t.c1_new, t.c2_old = t.c2_new