更新某一個字段寫起來簡單,也容易理解:
UPDATE tablea A SET A.name=(select name from tableb B where A.id=B.id)
更新多個字段就顯得比較冗長:
UPDATE tablea A SET A.name=(select name from tableb B where A.id=B.id),A.age=(select age from tableb B where A.id=B.id)
如果需要更新的字段太多,這樣寫就太亂了,而且重複查詢效率也大打折扣,可以改用這樣的寫法:
MERGE INTO tablea A USING tableb B ON ( A.id = B.id ) WHEN MATCHED THEN UPDATE SET A.name=B.name,A.age=B.age,A.title=B.title