Я ищу четкое объяснение того, что делает оператор MERGE в Oracle.
Вот что я делаю после:
MERGE INTO (target_table) t
USING (source_view) s
ON (join condition)
WHEN MATCHED THEN UPDATE SET col1 = val1 [, ...]
WHEN NOT MATCHED THEN INSERT (col1 [, ...]) VALUES ( val1 [, ...])
- какое соединение выполняется? Я думаю, что это полное внешнее соединение, я прав?
- относительно части
WHEN MATCHED: что происходит, когда строка изtсоответствует нескольким строкам изs? - относительно части
WHEN NOT MATCHED, я считаю, что это означает "когда строка вsне имеет соответствия вt". Я прав?
Спасибо.