我想要实现的是获得第6个字段,显示截至该日期之前所有更改的总和。
我通过添加SUM IF计算在Excel中轻松实现了这一点,以说明我需要帮助的内容。
现在我需要删除Excel并直接在Access中完成。
答案 0 :(得分:2)
感谢让我了解Dsum的用户Utsav,我设法制作了这个DSum函数,解决了我的问题。
Expr1: DSum("[SumOfInventory Change]";
"Inventory Report Table";
"[Part SKU] = '" & [Part SKU] &
"' AND Date Between #" & Format("2015-01-01";"mm/dd/yyyy") &
"# And #" & Format([Date];"mm/dd/yyyy") & "#"
)
答案 1 :(得分:2)
考虑运行库存总和的子查询:
有条件地聚合子查询
SELECT t1.[Date], t1.[Part SKU], t1.[SKU Name], t1.[SumOfInventory Change],
(SELECT SUM(t2.[SumOfInventory Change])
FROM [Inventory Report Table] t2
WHERE t1.[Date] >= t2.[Date]
AND t1.[Part SKU] = [t2.Part SKU]) AS [Inventory Level]
FROM [Inventory Report Table] t1
DSum()子查询(使用日期条件的动态条件)
SELECT t1.[Date], t1.[Part SKU], t1.[SKU Name], t1.[SumOfInventory Change],
DSum("[SumOfInventory Change]", "[Inventory Report Table]",
"[Date] >=#" & t1.[Date] & "# AND [Part SKU] ='" & [t2.Part SKU] &"'") AS [Inventory Level]
FROM [Inventory Report Table] t1
如果[Date]
存储为字符串而不是日期/时间(来自您的帖子,Access ACE / Jet默认情况下不会以其他RDMS的格式存储日期),请替换{{1单引号。