Table1 テーブルから Table2 テーブルの複数の列を更新したい。ステージング テーブルには null 値が含まれる場合があります。NULL 値ではなく、Table1 テーブルに値を持つデータを更新したいだけです。
ご意見をお聞かせください
例えば
Table 1 Table 2
ID col11 col2 col3 ID1 col1 col2 col3
3 test xxxx (null) 3 (null) jjj ffffff
5 (null) yyyyy zzzzzz 5 dddd (null) lllllllll
出力
ID col1 col2 col3
3 test xxxx ffffff
5 dddd yyyyy zzzzzz
表 1 の値が null の場合、表 2 の値を更新しないでください。
今の私のアプローチは
UPDATE Table2
SET ( col1 ,col2,col3)
= (SELECT NVL(col1 ,col11), NVL(col2,col22), NVL(col3,col33)
FROM Test1
WHERE ID = ID1 )