Heim >Datenbank >MySQL-Tutorial >Wie kann ich Daten aus mehreren Tabellen mit dem UNION-Operator von SQL kombinieren?

Wie kann ich Daten aus mehreren Tabellen mit dem UNION-Operator von SQL kombinieren?

Mary-Kate Olsen
Mary-Kate OlsenOriginal
2024-12-29 09:43:15628Durchsuche

How Can I Combine Data from Multiple Tables Using SQL's UNION Operator?

Kombinieren von Tabellen für eine konsolidierte Ausgabe

Bei der Arbeit mit mehreren Datentabellen kann es häufig vorkommen, dass diese zu einer einzigen, zusammenhängenden Ausgabe kombiniert werden Aufgabe. Um dies zu erreichen, ist das Verständnis der Datenstruktur und der Abfragevorgänge von entscheidender Bedeutung.

Stellen Sie sich vor, Sie hätten zwei Tabellen: KnownHours und UnknownHours. Das Ziel besteht darin, diese Tabellen zusammenzuführen und dabei die Spalte „Monat“ außer Acht zu lassen, um einen umfassenden Überblick über die Stunden zu erhalten, die verschiedenen Gebührennummern und Kategorie-IDs zugeordnet sind.

Um dies zu erreichen, dient der UNION-Operator als leistungsstarkes Werkzeug. Es ermöglicht uns, die Ergebnisse mehrerer Abfragen zu kombinieren und sie im Wesentlichen aneinander anzuhängen. Die Syntax für UNION in SQL lautet wie folgt:

SELECT ...
FROM table1
UNION
SELECT ...
FROM table2

In unserem Fall müssen wir die Stunden für jede ChargeNum/Kategorie-Kombination gruppieren. Wir können unsere UNION-Abfrage wie folgt ändern:

SELECT ChargeNum, CategoryID, SUM(Hours)
FROM KnownHours
GROUP BY ChargeNum, CategoryID
UNION ALL
SELECT ChargeNum, 'Unknown' AS CategoryID, SUM(Hours)
FROM UnknownHours
GROUP BY ChargeNum

Das Schlüsselwort UNION ALL unterscheidet sich geringfügig von UNION darin, dass es keinen Versuch unternimmt, doppelte Zeilen zu entfernen. Dadurch wird sichergestellt, dass alle Zeilen beider Abfragen im Endergebnis enthalten sind.

Durch die Verwendung der UNION ALL-Operation können wir die Ergebnisse von KnownHours und UnknownHours effektiv kombinieren und so eine umfassende Tabelle mit der gewünschten Ausgabe erstellen:

ChargeNum    CategoryID     Hours
111111       1              90
111111       2              50
111111       Unknown        110.5
222222       1              40
222222       Unknown        25.5

Wenn Sie den UNION-Operator verstehen, können Sie Daten aus mehreren Quellen zusammenführen und so maßgeschneiderte und umfassende Ausgaben für Ihre Datenanalyse erstellen Bedürfnisse.

Das obige ist der detaillierte Inhalt vonWie kann ich Daten aus mehreren Tabellen mit dem UNION-Operator von SQL kombinieren?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn