记录字段为总和

时间:2013-05-14 21:12:21

标签: sql forms ms-access

我正在尝试在MS Access中创建一个多项目表单,其中每个记录都有一个聚合值字段。也就是说,我有两个表与一对多的关系。对于表a中的每个记录(一对多中的“一”),我想总结表b中的一个字段(一对多中的“多个”)。

我尝试使用带有INNER JOIN和SUM sql语句的记录源,但这不起作用,因为SUM函数只返回一个聚合值(只有一行包含所有记录的总和)。我希望表a中的每个唯一记录有一行,并且有一个字段可以汇总表b中的所有相关记录。

哦,天啊。我希望这对阅读它的人有意义。我的解释似乎令人困惑,但我不确定如何澄清它。

1 个答案:

答案 0 :(得分:1)

声音简单:

select 
    a.Field1, sum(b.Field2) as sumOfField2
from
    [yourTableA] as a
    inner join [yourTableB] as b on a.id = b.idOfA
group by 
    a.Field1

这应该为Field1的每个值提供一个聚合值。替换字段和表名称以满足您的需求。

提示:

  1. 如果您需要按更多值进行分组,请将它们添加到您的字段列表(指示的select部分)到您的分组字段(group by部分的指示)
  2. 如果您还需要在表b中显示表a中没有任何相关记录的值,请将inner join替换为left join(总和将为零)
  3. 希望这有帮助