ACCESS如何查询两个不同表的数据 关联聚合查询报错怎么解决
错误原因
你在查询中使用了SUM聚合函数,但未添加GROUP BY子句。SQL聚合查询的语法要求:所有出现在SELECT列表中、没有被聚合函数包裹的字段,都必须放入GROUP BY子句中,否则就会触发你遇到的报错。
修正后的查询语句
SELECT Table1.Name, Sum(Table1.Value1) AS Value1, Sum(Table1.Value2) AS Value2, Table2.Class FROM Table1 INNER JOIN Table2 ON Table1.Name = Table2.Name WHERE Table1.Date = #25/10/2021# GROUP BY Table1.Name, Table2.Class ORDER BY Table1.Name
改动说明
- SELECT列表补充了预期输出需要的
Name字段,同时给聚合计算结果设置了和预期一致的别名 - 新增
GROUP BY Table1.Name, Table2.Class子句,将所有非聚合字段加入分组规则,符合SQL语法要求,同时会按Name维度聚合计算Value1、Value2的总和,完全匹配你的预期输出。
内容的提问来源于stack exchange,提问作者TourEiffel
相关产品推荐
相关产品推荐

