我正在尝试在 Access 中运行一个查询,该查询将返回在当月和上个月创建的所有记录。选择表格和字段不是问题。在此特定查询中,限制查询的字段是 ReleaseDate,其值为 Date/Time。此查询必须考虑到当当前月份为 1 月时,上个月可能是上一年。
答案 0 :(得分:0)
使用 DateSerial() 确定目标日期范围的开始和结束。
例如,从今天 (4/19/2021) 开始的上个月的开始...
? DateSerial(Year(Date()), Month(Date()) -1, 1)
3/1/2021
下个月的第一天...
? DateSerial(Year(Date()), Month(Date()) +1, 1)
5/1/2021
因此,您可以像这样将这些条件应用于查询的 ReleaseDate
子句中的 WHERE
...
WHERE ReleaseDate >= DateSerial(Year(Date()), Month(Date()) -1, 1)
And ReleaseDate < DateSerial(Year(Date()), Month(Date()) +1, 1)
请注意,当您给它一个小于 1 或大于 12 的月份值时,DateSerial()
将调整其输出日期的年份部分 ...
? DateSerial(2021, 0, 1)
12/1/2020