MERGE: Daten zusammenführen (Oracle, DB2)

Oracle und DB2 unterstützen die Verwendung der MERGE-Anweisung, die Zeilen in Abhängigkeit davon, ob sie in der Zieltabelle bereits vorhanden sind oder nicht, aktualisiert oder einfügt. Die grundlegende Syntax ist:

MERGE INTO table alias
USING datasource ON (exists_test)
WHEN MATCHED THEN UPDATE
   SET column = value, column = value,  . . .
WHEN NOT MATCHED THEN INSERT
   (column, column,  . . . )
   VALUES (value, value,  . . . )

datasource ::= {table|view|(subquery)}

Geben Sie beispielsweise Folgendes an, um einen Wasserfall in die upfall-Tabelle einzufügen oder einen eventuell bereits vorhandenen Eintrag für diesen Wasserfall zu aktualisieren:

MERGE INTO upfall u USING (SELECT * FROM new_falls) nf ON (u.id = nf.id) ...

Get SQL kurz & gut, 2nd Edition now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.