PostgreSQL
 sql >> Base de données >  >> RDS >> PostgreSQL

Comment grouper par date avec un champ d'horodatage dans Postgres?

Vous devez tronquer dans le GROUP BY aussi :

SELECT created_at::date, COUNT(*)
FROM table_name
WHERE product_uuid = '586d8e21b9529d14801b91bd' AND
      created_at > now() - interval '30 days'
GROUP BY created_at::date
ORDER BY created_at::date ASC;

Votre version est agrégée par valeur de date/heure mais n'affiche que le composant de date.

Aussi, je vous recommande d'utiliser current_date plutôt que now() ainsi la première date n'est pas tronquée.