MS Access:DSUM 仅对具有相同日期的行求和

MS Access: DSUM to sum only rows with same date

我有以下查询,其中周是日期字段,市场和团队是文本字符串。

SELECT t1.Week, t1.Market, t1.Team, Sum(t1.Audits) AS CFS_Audits, Sum(t1.Incorrect) AS CFS_Incorrect
FROM t1
GROUP BY t1.Week, t1.Market, t1.Team;

我的目标是有一个附加字段使用 DSUM 来计算给定周发生的所有审计。因此,该字段的粒度应低于 CFS_Audits,后者在 Week-Market-Team 级别细分。
我尝试了以下代码 X: DSUM("Audits", "t1", "[Week]="&[Week]),这是我发现的最接近的问题 中建议的,但结果字段始终是 NULL。我怀疑这可能是因为在给定的示例中,该字段存储为数字而不是日期。或者也许我完全采用了错误的方法。 在线教程也无济于事,因为在所有情况下我都发现它们提供了 DSUM 的标准参数示例以及硬编码标准,而在这里我需要逐行评估。

谢谢

Access 中的日期 SQL 很难使用

最简单的方法是避免任何类型转换,即使用子查询而不是域聚合。

SELECT t.Week, t.Market, t.Team, Sum(t.Audits) AS CFS_Audits, Sum(t.Incorrect) AS CFS_Incorrect, (SELECT Sum(s.Audits) FROM t1 s WHERE s.Week = t.Week) As X
FROM t1 t
GROUP BY t.Week, t.Market, t.Team;

或者,您可以在 DSUM 中使用日期,但它应该被 # octothorpes 包围并且格式为 YYYY-MM-DD 或 MM/DD/YYYY:

SELECT t.Week, t.Market, t.Team, Sum(t.Audits) AS CFS_Audits, Sum(t.Incorrect) AS CFS_Incorrect, DSUM("Audits", "t1", "[Week]=" & Format([Week], "\#yyyy-mm-dd\#") As X
FROM t1 t
GROUP BY t.Week, t.Market, t.Team;