UNION

Op deze pagina:

    UNION wordt gebruikt om het resultaat van twee of meer SELECT opdrachten te combineren. Dit kan alleen indien iedere SELECT opdracht in een UNION hetzelfde aantal kolommen heeft die in dezelfde volgorde staan en deze kolommen moeten gelijke data typen hebben.

    UNION algemene vorm:

    
    SELECT kolomnamen FROM tabel1
    UNION
    SELECT kolomnamen FROM tabel2;
    

    UNION neemt standaard alleen distincte waarden, om ook dubbele waarden toe te staan kan je ALL gebruiken.

    UNION ALL algemene vorm:

    
    SELECT kolomnamen FROM tabel1
    UNION ALL
    SELECT kolomnamen FROM tabel2;
    

    De kolomnamen in het resultaat zijn meestal gelijk aan de kolomnamen in de eerste SELECT van de UNION.

    UNION voorbeeld:

    
    --Alleen distincte waarden:
    SELECT Stad FROM Klanten
    UNION
    SELECT Stad FROM Leveranciers
    ORDER BY Stad;
    

    UNION ALL voorbeeld:

    
    --Nu wel dubbele waarden:
    SELECT Stad FROM Klanten
    UNION ALL
    SELECT Stad FROM Leveranciers
    ORDER BY Stad;
    

    UNION met WHERE

    
    --Alleen distincte waarden, 
    --alleen plaatsen in Duitsland
    SELECT Stad, Land FROM Klanten
    WHERE Land='Duitsland'
    UNION
    SELECT Stad, Land FROM Leveranciers
    WHERE Land='Duitsland'
    ORDER BY Stad;
    

    UNION ALL met WHERE

    
    --Nu wel dubbele waarden,
    --alleen plaatsen in Duitsland
    
    SELECT Stad, Land FROM Klanten
    WHERE Land='Duitsland'
    UNION ALL
    SELECT Stad, Land FROM Leveranciers
    WHERE Land='Duitsland'
    ORDER BY Stad;
    

    Nog een UNION voorbeeld:

    
    --Klanten en Leveranciers,
    --Bij Relatie komt te staan of het
    --om een Klant of een leverancier gaat:
    SELECT 'Klant' AS Relatie, Contactnaam, Stad, Land
    FROM Klanten
    UNION
    SELECT 'Leverancier', Contactnaam, Stad, Land
    FROM Leveranciers; 
    

     

    Verwante artikelen