Merge (SQL) - Wikiwand
For faster navigation, this Iframe is preloading the Wikiwand page for Merge (SQL).

Merge (SQL)

Uit Wikipedia, de vrije encyclopedie

Een MERGE-opdracht in SQL wordt gebruikt in combinatie met INSERT en UPDATE voor het invoegen of bijwerken van bestaande records afhankelijk van de opgegeven conditie. Het werd voor het eerst geïntroduceerd in de SQL:2003-standaard, en later uitgebreid in de SQL:2008-standaard.

Het MERGE-statement is met name praktisch bij het uitvoeren van meerdere INSERT en UPDATE instructies, omdat er slechts een instructie gebruikt hoeft te worden.

Sommige implementaties gebruiken de term 'Upsert', een porte-manteau van Update en Insert. Hiermee wordt een niet-bestaand record in een tabel ingevoegd, of als het record wel bestaat, de gegevens ervan bijgewerkt. Dit synoniem wordt toegepast in PostgreSQL, SQLite en Microsoft Azure SQL.

Gebruik

 MERGE INTO doeltabel USING brontabel ON (conditie)
   WHEN MATCHED THEN
   UPDATE SET kolom1 = waarde1 [, kolom2 = waarde2 ...]
   WHEN NOT MATCHED THEN
   INSERT (kolom1 [, kolom2 ...]) VALUES (waarde1 [, waarde2 ...]);

Voorbeeld

Om aantallen bij te werken of in te voegen in de tabel 'verkoop' waarbij het artikelID gelijk is gebruikt men:

 MERGE INTO verkoop USING producten ON (producten.artikelID = verkoop.artikelID)
   WHEN MATCHED THEN
   UPDATE SET aantal = 50
   WHEN NOT MATCHED THEN
   INSERT (aantal) VALUES (50);

Zie ook

{{bottomLinkPreText}} {{bottomLinkText}}
Merge (SQL)
Listen to this article