SQL-Gruppierung nach Datum

Sql Gruppierung Nach Datum



Die SQL GROUP BY-Klausel ist ein leistungsstarkes Tool zum Gruppieren und Aggregieren der Daten. Es bietet eine hervorragende Möglichkeit, die Daten anhand bestimmter Kriterien zu gruppieren und dann eine Aktion für die resultierenden Gruppen durchzuführen.

Ein häufiger Anwendungsfall für GROUP BY ist das Gruppieren nach Datum. In diesem Tutorial lernen wir die Grundlagen der Arbeit mit der GROUP BY-Klausel kennen und besprechen, wie man sie zum Gruppieren der Daten nach Datum in SQL verwendet.







NOTIZ: Wir gehen davon aus, dass Sie über grundlegende SQL-Kenntnisse verfügen. Zu Demonstrationszwecken verwenden wir die Beispiele in diesem Tutorial mit MySQL 8. Sie können die Konzepte dieses Tutorials jedoch frei auf die anderen SQL-basierten Datenbank-Engines portieren.



Beispieltabelle:

Der erste Schritt besteht darin, eine Basistabelle und Beispieldaten zur Demonstration einzurichten. Wenn Sie bereits eine Tabelle haben, mit der Sie arbeiten möchten, können Sie diesen Abschnitt gerne überspringen.



Verwenden Sie zum Erstellen der Tabelle die folgende Abfrage:





CREATE TABLE-Transaktionen (
Ausweis int nicht null auto_increment-Primärschlüssel,
Datum DATUM,
Betrag DEZIMAL ( 10 , 2 )
) ;


Sobald Sie die Tabelle erstellt haben, fügen Sie die Beispieldaten wie folgt ein:

INSERT INTO-Transaktionen ( Datum , Menge )
WERTE
( '01.01.2023' , 100,00 ) ,
( '02.01.2023' , 50,00 ) ,
( '03.01.2023' , 75,00 ) ,
( '04.01.2023' , 200,00 ) ,
( '05.01.2023' , 150,00 ) ,
( '06.01.2023' , 175,00 ) ,
( '07.01.2023' , 50,00 ) ,
( '08.01.2023' , 100,00 ) ,
( '09.01.2023' , 25.00 ) ,
( '10.01.2023' , 75,00 ) ,
( '2023-01-11' , 150,00 ) ,
( '2023-01-12' , 200,00 ) ,
( '2023-01-13' , 250,00 ) ,
( '2023-01-14' , 175,00 ) ,
( '2023-01-15' , 150,00 ) ,
( '2023-01-16' , 100,00 ) ,
( '2023-01-17' , 50,00 ) ,
( '2023-01-18' , 75,00 ) ;


Dadurch sollten die Zufallsdaten zur Transaktionstabelle hinzugefügt werden. Mit der Select-Anweisung können wir die resultierende Tabelle wie folgt anzeigen:



wählen * aus Transaktionen;


Ausgabetabelle:


Sobald wir die Daten vorbereitet haben, können wir mit dem nächsten Schritt fortfahren.

SQL-Gruppierung nach Datum

Wie Sie sich vorstellen können, verwenden wir die GROUP BY-Klausel, um die Daten in einer bestimmten Tabelle basierend auf bestimmten Werten zu partitionieren. Die Klausel-Syntax lautet wie folgt:

SELECT Spalte1, Spalte2, ...
VON Tabellenname
GROUP BY Spalte1, Spalte2, ...;


In der vorherigen Syntax verwenden wir die GROUP BY-Klausel, um die Spalten anzugeben, nach denen Sie die Daten gruppieren möchten.

Aus der vorherigen Tabelle können wir die Datumsspalte verwenden, um die Daten wie in der folgenden Abfrage gezeigt zu gruppieren:

WÄHLEN Datum , SUMME ( Menge ) als Gesamtmenge
VON Transaktionen
GRUPPIERE NACH Datum ;


Die vorherige Abfrage führt die grundlegenden Berechnungen durch und addiert den Gesamtbetrag für jeden Tag mithilfe der Funktion sum(). Anschließend gruppieren wir die Daten basierend auf den Datumswerten. Die resultierende Tabelle sieht wie folgt aus:

Datum formatieren

Manchmal müssen wir das Datum möglicherweise formatieren, um es lesbarer zu machen. Ein Beispiel ist wie folgt:

DATUM_FORMAT AUSWÄHLEN ( Datum , '%m/%d/%Y' ) als formatiertes_Datum, SUMME ( Menge ) als Gesamtmenge
VON Transaktionen
GRUPPIERE NACH Datum ;


Dies sollte die Datumswerte im angegebenen Format wie folgt zurückgeben:

Datumsbereich des SQL-Filters

Mit der WHERE-Klausel können wir die Ergebnismenge auch nach einem Datumsbereich filtern. Ein Beispiel ist wie folgt:

DATUM_FORMAT AUSWÄHLEN ( Datum , '%m/%d/%Y' ) als formatiertes_Datum, SUMME ( Menge ) als Gesamtmenge
VON Transaktionen
WO Datum ZWISCHEN '01.01.2023' UND '2023-01-15'
GRUPPIERE NACH Datum ;


Die resultierende Tabelle ist im Folgenden dargestellt:


Hier hast du es! Eine Möglichkeit, die Daten aus einer bestimmten Tabelle basierend auf Datumswerten zu gruppieren.

Abschluss

In diesem Tutorial wurden die Grundlagen der Arbeit mit der GROUP BY-Klausel in SQL erläutert, um die Daten basierend auf bestimmten Werten zu sortieren. Dadurch konnten wir erläutern, wie die GROUP BY-Klausel verwendet wird, um die Daten basierend auf Datumswerten zu unterteilen.