SQL-Daten nach Monat und Jahr gruppieren
In einer SQL-Abfrage ist es häufig erforderlich, Daten zur Analyse nach Monat und Jahr zu gruppieren. Dazu gehört das Erstellen einer neuen Spalte, die die gewünschte Gruppierungskombination darstellt.
Betrachten Sie die folgende Abfrage:
SELECT MONTH(date) AS Mjesec, SUM(marketingExpense) AS SumaMarketing, SUM(revenue) AS SumaZarada FROM [Order] WHERE (idCustomer = 1) AND (date BETWEEN '2001-11-3' AND '2011-11-3') GROUP BY MONTH(date), YEAR(date)
Diese Abfrage gruppiert die Daten nach Monat, was zu einer Ausgabe wie „9“ für September führt . Um den Monat und das Jahr zusammen anzuzeigen, können wir die CAST-Funktion verwenden, um die Monats- und Jahreswerte in Zeichenfolgen umzuwandeln und sie mit einem Bindestrich zu verketten.
SELECT CAST(MONTH(date) AS VARCHAR(2)) + '-' + CAST(YEAR(date) AS VARCHAR(4)) AS Mjesec, SUM(marketingExpense) AS SumaMarketing, SUM(revenue) AS SumaZarada FROM [Order] WHERE (idCustomer = 1) AND (date BETWEEN '2001-11-3' AND '2011-11-3') GROUP BY CAST(MONTH(date) AS VARCHAR(2)) + '-' + CAST(YEAR(date) AS VARCHAR(4))
Diese Änderung zeigt die Ergebnisse im gewünschten Format an. zum Beispiel „9-2011“.
Alternativ können wir die CAST-Funktion mit führenden Nullen verwenden, um die Konsistenz sicherzustellen Formatierung:
GROUP BY CAST(YEAR(date) AS VARCHAR(4)) + '-' + right('00' + CAST(MONTH(date) AS VARCHAR(2)), 2)
Dies führt zu einer Ausgabe wie „2011-09“.
Das obige ist der detaillierte Inhalt vonWie kann ich SQL-Daten für die Berichterstellung nach Monat und Jahr gruppieren?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!