ORA__SQL,
Спасибо! Очень помогли! Нашел пример наглядный. Все получилось как надо!
CREATE TABLE TEST (
ID NUMBER,
a VARCHAR2(10),
b VARCHAR2(10),
CONSTRAINT pk_test PRIMARY KEY (ID)
);
MERGE INTO TEST t
USING (SELECT 2 ID, 'a' a, 'b' b FROM dual) new_row
ON (t.id = new_row.id)
WHEN MATCHED THEN
UPDATE SET a = new_row.a,
b = new_row.b
WHEN NOT MATCHED THEN
INSERT (ID, a, b) VALUES (new_row.id, new_row.a, new_row.b);
SELECT * FROM TEST;
MERGE INTO TEST t
USING (SELECT 1 ID, 'x' a, 'y' b FROM dual) new_row
ON (t.id = new_row.id)
WHEN MATCHED THEN
UPDATE SET t.a = new_row.a,
t.b = new_row.b
WHEN NOT MATCHED THEN
INSERT (ID, a, b) VALUES (new_row.id, new_row.a, new_row.b);
SELECT * FROM TEST;