2015-05-09 32 views
1

是否有任何可能的方法我們可以在merge聲明中使用join在Oracle中使用合併SQL

MERGE INTO TABLE1 T 
    USING TABLE2 
    ON ..... 
    WHEN MATCHED THEN ..... 
    WHEN NOT MATCHED THEN INSERT (X,Y,Z1) VALUES (X,Y,Z1); 

X和Y屬於TABLE2,並沒有合併問題,但我也想從另一個TABLE3插入Z1時合併到TABLE1中。

我想加入TABLE3,但它不允許在合併語法。

有沒有辦法做到這一點?

+1

嘗試使用子查詢代替表。 –

回答

1

USING子句可以將子查詢作爲其參數。這聽起來像你想要的東西是這樣的:

MERGE INTO table1 t 
USING (
    ... subquery joining TABLE2 and TABLE3 ... 
) f 
ON f.something = t.something 
... 
+0

謝謝。有效! – user3503758