SQL UNION ALL



SQL SELECT
SQL DISTINCT
SQL WHERE
SQL AND OR
SQL IN
SQL BETWEEN
SQL LIKE
SQL ORDER BY
SQL Funktionen
SQL COUNT
SQL GROUP BY
SQL HAVING
SQL ALIAS
SQL JOIN
SQL OUTER JOIN
SQL Unterabfrage
SQL UNION
SQL UNION ALL
SQL INTERSECT
SQL MINUS
SQL Kaskadieren
SQL SUBSTRING
SQL TRIM


Seitenübersicht



  SQL > SQL Befehle > Union All

Der SQL-Befehl UNION ALL vereinigt ebenfalls die Ergebnismengen zweier Abfragen. Der Unterschied zwischen UNION ALL und UNION besteht darin, dass mit UNION nur unterschiedliche Werte ausgewählt werden, während bei UNION ALL alle Werte, also auch mehrfach vorkommende Ergebnistupel erhalten bleiben.

Die Syntax für UNION ALL sieht folgendermaßen aus:

[SQL-Anweisung 1]
UNION ALL
[SQL-Anweisung 2]

Wir verwenden das gleiche Beispiel wie im vorherigen Abschnitt, um den Unterschied zu verdeutlichen. Nehmen wir an, es liegen die folgenden zwei Tabellen vor,

Tabelle Store_Information
store_name Sales Date
Los Angeles 1500€ 05.Jan.1999
San Diego 250€ 07.Jan.1999
Los Angeles 300€ 08.Jan.1999
Boston 700€ 08.Jan.1999

Tabelle Internet_Sales
Date Sales
07.Jan.1999 250€
10.Jan.1999 535€
11.Jan.1999 320€
12.Jan.1999 750€

und wir möchten alle Tage herausfinden, an denen ein Verkaufsvorgang stattgefunden hat und ebenso alle Tage, an denen etwas über das Internet verkauft wurde. Dazu verwenden wir folgende SQL-Anweisung:

SELECT Date FROM Store_Information
UNION ALL
SELECT Date FROM Internet_Sales

Ergebnis:

Date
05.Jan.1999
07.Jan.1999
08.Jan.1999
08.Jan.1999
07.Jan.1999
10.Jan.1999
11.Jan.1999
12.Jan.1999


SQL INTERSECT >>