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

Finden Sie neue Datensätze für jeden der letzten n Monate in PostgreSQL

Ich denke, das date_trunc Funktion kann Ihr Freund sein (siehe postgres docs ). Sie würden so etwas tun, denke ich:

select 
COUNT(ID) as Total,
COUNT(CASE WHEN createddate between date_trunc('month', now()) AND now() THEN AG.ID END) as ThisMonth,
COUNT(CASE WHEN createddate between date_trunc('month', now()) - interval '1 month' AND date_trunc('month', now()) - interval '1 day' THEN AG.ID END) as LastMonth,

usw...