Oracle SQL correlated update

前端 未结 4 628
生来不讨喜
生来不讨喜 2021-01-21 23:45

I got three tables:

t1.columns: a,c
t2.columns: a,b
t3.columns: b,c,d

Now what I want is to update t1.c with t3.d. But I can\'t just update t1

4条回答
  •  闹比i
    闹比i (楼主)
    2021-01-22 00:24

    Sorry for the confusion but I solved it:

    UPDATE table t1
    SET t1.c = (select t3.d from table3 t3, table2 t2
                              where t1.a = t2.a and t2.b = t3.b and t3.c = t1.c)
     WHERE EXISTS ( SELECT 1 FROM table1 t1, table2 t2 WHERE t1.a = t2.a and t2.b = t3.b and t3.c = t1.c)
    

提交回复
热议问题