我对Oracle来说还很陌生。我需要根据与另一个表不同的标准来更新一个表中的两列:
表1:
C1 = Hello, C2 = Jane, C3 = Goodbye, C4 = John OR
C1 = Brown, C2 = Cat, C3 = Black, C4 = Dog
表2:
T2.C1 = T1.C1 and T2.C2 = T1.C2 when T2.C1 = T1.C3 and T2.C2 = T1C4
我知道如何在多个更新语句中执行此操作。是否可以合而为一?如果是这样,如何?
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