SQL UNION – So führen Sie Datensätze erfolgreich zusammen

SQL UNION vereint Datensätze aus zwei oder mehr Tabellen in einer Zieltabelle ohne Duplikate zusammen. Das hat den Vorteil, dass Sie Datensätze, die sich aufeinander beziehen, zur besseren Übersicht in einer Tabelle vereinen und effizientere, aussagekräftigere Datenabfragen durchführen.

Was ist SQL UNION?

Ob Datensätze wie Kunden-, Preis- oder Produktinformationen, Projektdaten oder Finanzdaten – die Pflege komplexer Datenbanken stellt eine Herausforderung dar. Dazu gehört auch, dass Administratorinnen und Administratoren bestehende, verknüpfte Datensätze effizient in aussagekräftigen Ergebnistabellen zusammenführen müssen. Hierzu kommt häufig der SQL-Operator SQL UNION zum Einsatz. Indem Sie UNION für Datenabfragen, Vergleiche, Analysen oder Änderungen an Datensätzen verwenden, vereinen Sie ausgewählte Datensätze aus einer oder mehreren Tabellen und entfernen mögliche Duplikate.

In Kombination mit weiteren SQL-Befehlen und -Funktionen wie ORDER BY, GROUP BY, WHERE oder HAVING erstellen Sie für Ihre Analysen, Berichte oder Aktualisierungen relevante Datenstrukturen nach klaren Kriterien. Mit Aggregatfunktionen wie SQL AVG oder SQL SUM können Sie zudem Tabellen zusammenführen und zugleich Ergebnismengen nach Bedarf berechnen und sortieren.

Tipp

Für die ersten Schritte mit SQL braucht es das nötige Grundwissen. Unsere SQL-Einführung mit Beispielen vermittelt Ihnen die wichtigsten Funktionen und Grundlagen für die Arbeit mit der Sprache.

Die Syntax von SQL UNION erklärt

Die einfache UNION-Syntax sieht wie folgt aus:

SELECT  SpalteA, SpalteB, … oder *  FROM  TabelleA
UNION
SELECT SpalteA, SpalteB, … oder *  FROM  TabelleB
sql

Diese Parameter kommen zum Einsatz:

  • SELECT: Mit dem Schlüsselwort SQL SELECT legen Sie die Spalten fest, die Sie aus zwei Tabellen zusammenführen möchten. Mit einem Asterisk * können Sie auch alle Datensätze auswählen. Die Anzahl der ausgewählten Spalten muss in jedem SELECT-Element einer UNION-Anweisung identisch sein und in derselben Reihenfolge stehen.
  • UNION: Führt ausgewählte Datensätze aus zwei Tabellen in einer Zieltabelle zusammen.

Für diese Anwendungen eignet sich UNION

Wenn Sie zusammenhängende Datensätze wie Kundenakten, Finanzdaten oder Produkt- und Projektinformationen einfach zusammenführen möchten, führt an SQL UNION kein Weg vorbei. Branchenübergreifend kommt der Operator in SQL unter anderem für folgende Anwendungsmöglichkeiten zum Einsatz:

  • Vollständige digitale Akten und Ordner aus Daten von Kundinnen und Kunden, Projekten, Patientinnen und Patienten oder Bestellungen erstellen
  • Verkaufsberichte erstellen oder Daten von verschiedenen Abteilungen vergleichen
  • Kaufverhalten analysieren zur Leadgenerierung
  • Finanz- und Transaktionsdaten analysieren und vergleichen
  • Duplikate aus Berichten oder aus zusammengeführten Datensätzen entfernen
  • Produktionsmengen, Liefermengen oder Lagerbestand auswerten
  • Bestell- und Verkaufsdaten für die Identifizierung von Trends oder Marketinganalysen aggregieren
Tipp

Nutzen Sie einen sicheren Datenspeicher, skalierbare Performance und individuelle Server- und Hosting-Angebote – mit SQL-Server-Hosting von IONOS. Wählen Sie aus Cloud Servern, vServern (VPS), Dedicated Servern oder Linux-Hosting und verlassen Sie sich auf Datensicherheit auf deutschem Niveau.

vServer / VPS
Vollständig virtualisiert mit Root-Zugriff
  • Bis zu 1 Gbit/s Bandbreite & unbegrenzt Traffic
  • Schneller NVMe-SSD-Speicher
  • Kostenlose Plesk Web Host Edition

Praktische Beispiele für SQL UNION

Unsere praktischen Beispiele sollen Ihnen leicht verständlich veranschaulichen, wie Sie mit SQL UNION effizient Datensätzen zusammenführen.

Zwei Datensätze in einer Tabelle zusammenführen

Angenommen, Sie möchten die Datensätze aus den Tabellen „Abonnenten“ und „Kunden“ in einer Zieltabelle ohne Duplikate anhand von Spalten wie „Name“, „Adresse“ und „KundenID“ vereinen. Gehen Sie dazu wie folgt vor:

SELECT  Name, Adresse, KundenID
FROM  Abonnenten
UNION
SELECT  Name, Adresse, KundenID
FROM  Kunden
sql

Mitarbeiterdaten aus verschiedenen Abteilungen zusammenführen

Sie möchten die Daten von Mitarbeiterinnen und Mitarbeitern aus den Tabellen „Marketing“ und „Vertrieb“ anhand von Spalten wie „Namen“ und „Stadt“ zusammenführen. Das gelingt so:

SELECT  Name, Stadt
FROM  Marketing
UNION
SELECT  Name, Stadt
FROM  Vertrieb
sql

Zwei Datensätze mit UNION ALL zusammenführen

In unserem dritten Beispiel veranschaulichen wir die Funktionsweise von UNION ALL. Im Gegensatz zum UNION-Operator erhalten Sie mit UNION ALL eine Zieltabelle mit allen gewünschten Datensätzen. Duplikate werden somit nicht entfernt. Als Beispiel nehmen wir eine Tabelle „Kunden“ und eine Tabelle „Lieferanten“ an, die Sie unter der Bedingung, dass Kundinnen bzw. Kunden und Lieferantinnen bzw. Lieferanten aus „Berlin“ stammen, zusammenführen möchten. So gehen Sie vor:

SELECT  Name, Stadt
FROM  Kunden
WHERE  Stadt  =  ´Berlin´
UNION ALL
SELECT  Name, Stadt
FROM  Lieferanten
WHERE  Stadt  =  ´Berlin´
GROUP BY  Stadt;
sql

Alternativen zu SQL UNION

Für das Zusammenführen von Daten ohne Duplikate gibt es zusätzlich oder an Stelle von UNION weitere Optionen. Wir stellen die wichtigsten davon kurz vor:

  • JOIN: Mit SQL JOIN können Sie Daten tabellenübergreifend zusammenführen, abfragen und verknüpfen. Hierzu stehen Ihnen Befehle wie INNER JOIN, LEFT JOIN, RIGHT JOIN sowie FULL JOIN oder CROSS JOIN zur Verfügung. Mit JOIN-Anweisungen können Sie Datensätze aus zwei Tabellen deutlich gezielter und flexibler als mit UNION vereinen, da Sie unter anderem mit der ON-Klausel Bedingungen festlegen.
  • GROUP BY: Mit SQL GROUP BY fassen Sie ausgewählte Datensätze aus Spalten und Tabellen mit identischen Werten in einer Zieltabelle zusammen.
  • ORDER BY: Mit SQL ORDER BY legen Sie fest, in welcher Reihenfolge Sie Datensätze in einer Zieltabelle ordnen.
  • SELECT DISTINCT: Mit SQL SELECT DISTINCT können Sie ähnlich wie mit UNION in einer Zieltabelle nur eindeutige Abfrageergebnisse ohne Duplikate ausgeben lassen.
  • UNION ALL: Der Operator UNION ALL funktioniert ähnlich wie UNION, führt jedoch alle Datensätze der ausgewählten Tabelle inklusive Duplikate zusammen.
War dieser Artikel hilfreich?
Page top