2017-04-12 71 views
0

我有2個表A和B更新表字段SQL/Oracle的

表A等

paid_month budget amount 

201703  11401 23000 
201703  11401 24000 
201703  11401 12000 

表B像

paid_month budget amount 

201703  11402 23000 
201703  11403 24000 
201703  11404 12000 

現在我要更新的預算在下表A中如下

set A.budget = B.budget 其中A.amount = B.amount

+0

的可能的複製甲骨文SQL:使用另一個表中的數據更新表](http://stackoverflow.com/questions/7030699/oracle-sql-update-a-table-with-data-from-another-table) – Nitish

+0

它必須是相同的月? B中會不會有匹配的記錄? B中可以有多個匹配的記錄嗎? –

+0

是的,它應該在同一個月 – ghalib

回答

0

Oracle不支持更新聯接語法,但你仍然可以實現你想要使用更新相關子查詢的內容:

UPDATE tableA a 
SET budget = (SELECT b.budget FROM tableB b 
       WHERE a.amount = b.amount AND a.paid_month = b.paid_month)