Oracle Update Query using Join

前端 未结 3 1350
谎友^
谎友^ 2020-11-30 15:41

I am trying to update the amount using Join but getting exception:

UPDATE tab1
   SET tab1.total_adjusted_cost = tab1.total_adjusted_cost + t1.total
 FROM ta         


        
3条回答
  •  半阙折子戏
    2020-11-30 16:36

    I think you have to use select keyword also. And follow the ANSI standard.

    UPDATE tab1 
        SET tab1.total_adjusted_cost = (select tab1.total_adjusted_cost + t1.total
                                       FROM table1 tab1, 
                                      (SELECT tab3.name, tab3."add", SUM(tab2.amount) AS total
                                      FROM table2 tab2 JOIN  table3 tab3 
                                                        ON tab2.id   = tab3.id
                                                       JOIN  table4 tab4 
                                                        ON  tab3.id  = tab4.id
                                       WHERE tab4.indicator ='Y'
                                       GROUP BY tab3.name,tab3."add") t1
        WHERE tab1.id = t1.id);  
    

提交回复
热议问题