sql >> Base de Datos >  >> RDS >> PostgreSQL

Consulta de PostgreSQL para contar/agrupar por día y mostrar días sin datos

Solo necesita una left outer join en lugar de una unión interna:

SELECT d.date, count(se.id)
FROM (SELECT to_char(date_trunc('day', (current_date - offs)), 'YYYY-MM-DD') AS date 
      FROM generate_series(0, 365, 1) AS offs
     ) d LEFT OUTER JOIN
     sharer_emailshare se 
     ON d.date = to_char(date_trunc('day', se.created), 'YYYY-MM-DD'))  
GROUP BY d.date;