PostgreSQL
 sql >> Datenbank >  >> RDS >> PostgreSQL

Gruppieren Sie Abfrageergebnisse nach Monat und Jahr in postgresql

Ich kann nicht glauben, dass die akzeptierte Antwort so viele positive Stimmen hat – es ist eine schreckliche Methode.

Hier ist der richtige Weg, mit date_trunc:

   SELECT date_trunc('month', txn_date) AS txn_month, sum(amount) as monthly_sum
     FROM yourtable
 GROUP BY txn_month

Es ist eine schlechte Praxis, aber es könnte Ihnen vergeben werden, wenn Sie

verwenden
 GROUP BY 1

in einer sehr einfachen Abfrage.

Sie können auch

verwenden
 GROUP BY date_trunc('month', txn_date)

wenn Sie das Datum nicht auswählen möchten.