2016-08-23 105 views
0

我有下面的查詢返回12個月的滾動數據。因此,如果我今天運行它,它會將數據從2015年8月23日帶回到2016年8月23日。現在理想情況下,我希望它從2015年8月1日開始,如果我要在下個月再次運行,它將從2015年9月1日開始運行。這可能嗎?謝謝12個月滾動

select 

Date 
Street 
Town 
Incidents 
IncidentType A 
IncidentType B 
IncidentType C 

FROM 
(

select 

COUNT(I.INC_NUM) as Incidents, 

COUNT(case when i.INC_TYPE = ''A'' THEN 1 
    end) 
"IncidentType A" 
COUNT(case when i.INC_TYPE = ''B'' THEN 1 
    end) 
"IncidentType B" 
COUNT(case when i.INC_TYPE = ''C'' THEN 1 
    end) 
"IncidentType C" 

FROM Table i 


GROUP BY i.INC_NUM 

) i 

where Date >= (now()-('12 months'::interval)) 
+2

請與您正在使用的數據庫標記您的問題。 –

回答

1

你的代碼表明你正在使用Postgres。如果代碼工作,你只需要調整where條款,使用date_trunc()

where Date >= date_trunc('month', now() - ('12 months'::interval)) 
+0

謝謝Gordon,這太棒了,非常感謝 – whitz11