我在使用 Access SQL 查询时遇到问题(我熟悉 MS SQL)。我在尝试将查询限制为过去一年内的日期时遇到错误。数据表按每个城市日期的销售额进行组织。
SELECT A.City, A.Region, Sum(A.Sales) AS TotalRev
FROM DataTable AS A
WHERE A.Date<=DateAdd("dd",-365,Date())
GROUP BY A.Month, A.City, A.Region
我收到的错误是“无效的过程调用”
最佳答案
也许原因是 dd
不是 MS Access 中的有效间隔(这里是 documentation )。试试这个:
SELECT A.City, A.Region, Sum(A.Sales) AS TotalRev
FROM DataTable AS A
WHERE A.Date <= DateAdd("d", -365, Date())
GROUP BY A.Month, A.City, A.Region;
也就是说,我不明白为什么 GROUP BY
中有 A.Month
,但 SELECT
中没有。此外,此查询的作用与您想要的相反。我期望更像:
SELECT A.City, A.Region, Sum(A.Sales) AS TotalRev
FROM DataTable AS A
WHERE A.Date >= DateAdd("yyyy", -1, Date())
GROUP BY A.City, A.Region;
关于sql - 通过具有日期范围的 Access 查询来限制组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46307492/