sql - 通过具有日期范围的 Access 查询来限制组

标签 sql ms-access

我在使用 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/

相关文章:

sql - 如何使这个地理距离 SQL 查询与 Postgres 兼容

sql - 为什么我们需要 `order by` in row_number() over(按列名排序)?

mysql - 我可以使用什么 SQL 查询来选择只有 0 个产品的用户?

vba - 在VBA中获取MS Access数据库的版本

sql-server - 升迁拆分 Access 数据库

sql - SSRS 报告生成器 : Creating text color expression based on textbox value?

sql - Postgres 更新规则返回受影响的行数

java - 将数百万条记录从本地插入Godaddy托管

ms-access - 从 CSV 导入 Access 时字段顺序错误

java - 在结果集 Java 中执行 Access 查询