Heim >Datenbank >MySQL-Tutorial >Wie führe ich eingehende/ausgehende Daten mit eindeutigen Daten in SQL zusammen und aggregiere sie?

Wie führe ich eingehende/ausgehende Daten mit eindeutigen Daten in SQL zusammen und aggregiere sie?

Patricia Arquette
Patricia ArquetteOriginal
2024-12-27 00:06:10429Durchsuche

How to Merge & Aggregate Inbound/Outbound Data with Unique Dates in SQL?

Tabellen und eindeutige Datumswerte in SQL zusammenführen

Die Herausforderung besteht darin, zwei Tabellen, Inbound und Outbound, zusammenzuführen und gleichzeitig sicherzustellen, dass die resultierende Tabelle angezeigt wird eindeutige Daten.

Der bereitgestellte VBA-Code führt die Tabellen erfolgreich mit UNION ALL zusammen. Um die Daten jedoch eindeutig zu machen, ist eine Änderung erforderlich.

Die überarbeitete Abfrage verwendet sowohl UNION ALL als auch GROUP BY. Insbesondere werden Daten aus beiden Tabellen mithilfe von UNION ALL zu einem einzigen Datensatz kombiniert und die Ergebnisse anschließend nach Datum und Produkt gruppiert. Dadurch wird sichergestellt, dass jede Kombination aus Datum und Produkt nur einmal in der zusammengeführten Tabelle vorkommt.

Die endgültige Abfrage lautet wie folgt:

SELECT Date, Product, SUM(Inbound) AS Inbound, SUM(Outbound) AS Outbound
FROM ((SELECT Inbound_Date AS Date, Product, SUM(Quantity) AS Inbound, 0 AS Outbound
      FROM Inbound
      GROUP BY 1, 2
     ) UNION ALL
     (SELECT Outbound_Date, Product, 0 AS Inbound, COUNT(*) AS Outbound
      FROM Outbound
      GROUP BY 1, 2
     )
    ) AS io
GROUP BY Date, Product;

Mit dieser Änderung werden in der zusammengeführten Tabelle eindeutige Daten angezeigt unter Beibehaltung der gewünschten Datenaggregation.

Das obige ist der detaillierte Inhalt vonWie führe ich eingehende/ausgehende Daten mit eindeutigen Daten in SQL zusammen und aggregiere sie?. 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