Sql MS Access查询:如何在从某个日期段开始的重复日期之间求和

Sql MS Access查询:如何在从某个日期段开始的重复日期之间求和,sql,ms-access,Sql,Ms Access,嗯, 问题不清楚: 我希望每月计算一次,但每个月都会从下个月的20号到19号开始 感谢您的帮助您可以从日期中减去19天,然后提取年份和月份: select year(dateadd("d", -19, datecol)), month(dateadd("d", -19, datecol)), count(*) from t group by year(dateadd("d", -19, datecol)), month(d

嗯, 问题不清楚:

我希望每月计算一次,但每个月都会从下个月的20号到19号开始


感谢您的帮助

您可以从日期中减去19天,然后提取年份和月份:

select year(dateadd("d", -19, datecol)), month(dateadd("d", -19, datecol)),
       count(*)
from t
group by year(dateadd("d", -19, datecol)), month(dateadd("d", -19, datecol))
order by min(datecol);

请提供样本数据和期望的结果。好的,我需要每月分组,但从下个月的20号到19号开始。2020年1月20日至2020年1月19日之间的所有日期:2019年12月20日至2020年1月19日2020年2月20日:2019年1月20日至2020年2月19日,等等…非常感谢,这是我要求的工作,只有一句话,从上个月开始计算月份:2020年7月15日->返回7,将返回6。所以我编辑并使用您的字符串如下:Month(DateSerial(Year)(DateAdd(“d”),-19,[dateimport])),Month(DateAdd(“d”),-19,[dateimport])+1,1)是否正确?还是有更快的?我的技术显然很差……;)如果希望从该月开始报告,则可以在该日期后添加一个月。例如:
year(dateadd(“m”,1,dateadd(“d)”,-19,datecol))
。非常感谢您的帮助!关闭