Naar inhoud springen

Union (SQL)

Uit Wikipedia, de vrije encyclopedie

Een UNION-opdracht in SQL combineert gegevens van meerdere query's van een database. De twee query's moeten hetzelfde aantal kolommen en gegevens bevatten om te worden gecombineerd. Duplicaten worden verwijderd, behalve wanneer UNION ALL wordt gebruikt.

Als gegeven zijn de volgende twee tabellen:

verkoop2017
persoon aantal
Bert 1000
Maarten 2000
Rob 5000
verkoop2018
persoon aantal
Bert 1500
Maarten 2000
Sander 15000

Als query wordt gebruikt:

 SELECT * FROM verkoop2017
 UNION
 SELECT * FROM verkoop2018

Als uitkomst krijgt men:

persoon aantal
Bert 1000
Maarten 2000
Rob 5000
Bert 1500
Sander 15000

Merk op dat er twee rijen aanwezig zijn voor Bert omdat beide kolommen niet overeenkomen. Er is een rij voor Maarten omdat beide kolommen gelijk zijn.

Met UNION ALL worden geen duplicaten weggelaten. De query

 SELECT * FROM verkoop2017
 UNION ALL
 SELECT * FROM verkoop2018

geeft de volgende uitkomst:

persoon aantal
Bert 1000
Bert 1500
Maarten 2000
Maarten 2000
Rob 5000
Sander 15000
  • (en) UNION in Transact-SQL MSDN-documentatie