如何使用第四个 table 的值更新与两个 table 连接的 oracle table?

How to update an oracle table joined with two tables with values from a fourth table?

我有一个主要的 table (T1),它将与两个 tables(T2 和 T3)连接,并且需要一种方法来用另一个 [= 的值更新 T1 的一列18=]。我似乎找不到准确执行更新操作的更新语句。

SELECT
    T1.VALUE --This value to be updated as New_value from New_table
FROM
    TABLE1 T1,  TABLE2 T2,  TABLE3 T3
WHERE
    T1.VALUE = 'Out_dated value'   --This value to be updated from New_table
AND T1.VA_ID=T2.VA_ID
AND T1.SI_ID=T3.SI_ID;

如果您列出一些示例数据和预期结果,将会有所帮助。但我想你想要这样的东西:

update table1 t1
set t1.value = (select new_value from new_table where old_value = t1.value)
where exists (SELECT 1
    FROM
    TABLE2 T2,  TABLE3 T3
    WHERE T1.VA_ID=T2.VA_ID
    AND T1.SI_ID=T3.SI_ID)

您没有显示 NEW_TABLE 的列名称,我在这里假设它们是 NEW_VALUEOLD_VALUE