访问报告子组求和

时间:2015-09-01 12:58:37

标签: ms-access report

在MS Access 2010中,假设查询包含以下结果:

Date     Activity     Hours
1.9.     Reading      1
1.9.     Writing      2
2.9.     Reading      1
3.9.     Talking      1
4.9.     Reading      3

1.10.    Talking      2
1.10.    Writing      1
2.10.    Reading      2
3.10.    Talking      2
4.10.    Reading      1

报告应显示按活动分组的每个月的小时数,例如

Month           Activity            Hours
September       Reading             5
                Writing             2
                Talking             1

October         Reading             3
                Writing             1
                Talking             4

使用向导我管理以获得类似

的报告
Month           Activity            Hours
September       Reading             1
                Reading             1
                Reading             3
                Writing             2
                Talking             1

October         Reading             2
                Reading             1
                Writing             1
                Talking             2
                Talking             2

这几乎是我想要的但是......?

我尝试了=总和(小时),但是所有小时数字段只包含所有小时数的总和,我仍然会为同一活动获得几行。

实际上报告更复杂。在报告之前的表格中,用户可以输入日期范围(例如,9月1日至10月30日)。该报告应总结整个时间范围,而不是分解为几个月,即:

Date range      Activity            Hours
9/1 - 10/30     Reading             8
                Writing             3
                Talking             5

1 个答案:

答案 0 :(得分:0)

使用如下SQL的SQL创建查询:

SELECT MonthName(Month([Date])), Activity, SUM(Hours)
FROM yourTable
WHERE [Date] >= xxx AND [Date] <= yyy
GROUP BY MonthName(Month([Date])), Activity

关键元素是GROUP BY子句,它将每月的小时数+活动数相加。

然后根据该查询生成报告。

顺便说一下,拨打专栏&#34;日期&#34;并不是一个好主意,它是Access中的保留字。