2
我想從Table1表中更新Table2表中的多個列。登臺表可能有空值。我只想更新Table1表中有值的數據 - 不是NULL值。使用臨時表更新多列避免臨時表中的空值
請指點
e.g
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
它不應該更新表2的值,如果表1中值爲null將空。
我的做法,現在是
UPDATE Table2
SET (col1 ,col2,col3)
= (SELECT NVL(col1 ,col11), NVL(col2,col22), NVL(col3,col33)
FROM Test1
WHERE ID = ID1)