そのままですが
/*TABLE_Bの新規データを挿入*/
insert into TABLE_A
select * from TABLE_B
where CODE not in
(select CODE from TABLE_A)
/*更新データをTABLE_Aに反映*/
update TABLE_A DST
set ([Field1], ....)
=
(select * from TABLE_B SRC
where SRC.CODE = DST.CODE
)
where DST.CODE in
(select CODE from TABLE_B)
で多分できると思います。確認する環境がないのでご了承ください。
ちなみに今回はUpdateのWhere句は必要がないですが意味あい的つけてみました。
また、OracleのPLANTABLEを使用した解析結果上ではupdateではexistsよりinを使用するほうが
パフォーマンスがよいことが多いです。
Postgresの調べ方を知らないものですみません。