MERGE INTO T T1
USING (SELECT '1001' AS a,2 AS b FROM dual where = b > 0) T2
ON ( T1.a=T2.a)
WHEN MATCHED THEN
UPDATE SET T1.b = T2.b
WHEN NOT MATCHED THEN
INSERT (a,b) VALUES(T2.a,T2.b);
SQL语句 使用一个表更新另一个表的方法

MERGE INTO T T1
USING (SELECT '1001' AS a,2 AS b FROM dual where = b > 0) T2
ON ( T1.a=T2.a)
WHEN MATCHED THEN
UPDATE SET T1.b = T2.b
WHEN NOT MATCHED THEN
INSERT (a,b) VALUES(T2.a,T2.b);