我有一个应用程序可以在不同时间轮询不同的垃圾箱,并根据重量计算每个垃圾箱中的小部件数量。轮询每隔几分钟进行一次,结果带有时间戳并添加到 MySQL 表中。该表包含以下 3 列。该示例显示了 3 个箱(A、B 和 C),但同一个小部件可能有 1 到 10 个箱。(小部件可能只在 1 或 2 个垃圾箱中,而较大的小部件可能会占用更多垃圾箱)
timestamp bin Widget_Count
--------------------------
1 A 8
2 B 7
3 C 4
4 A 1
5 B 3
6 C 5
7 A 6
8 B 7
9 C 2
应用程序需要生成一个“库存历史”报告——这将涉及在每个时间步计算总数是多少。在该时间步来自所有箱的项目。对于此示例,报告将仅包含时间戳列和下方的 CountHistory 列(最后一列)(显示其他列只是为了显示计算)
在时间 1,A 已被轮询并且有 8 个小部件。B 和 C 没有被轮询。所以总数是8。
在时间 2,B 已被轮询并且有 7 个小部件。所以总数是17
在时间 3,C 已被轮询并具有 4 个小部件。所以总数是19
在时间 4,A 再次轮询并且只有 1 个小部件。所以现在总数是 1+4+7=12
..等等。
timestamp bin Widget_ A B C CountHistory
Count (stock flow)
--------------------------------------------------------
1 A 8 8 0 0 8
2 B 7 8 7 0 15
3 C 4 8 7 4 19
4 A 1 1 7 4 12
5 B 3 1 3 4 8
6 C 5 1 3 5 9
7 A 6 6 3 5 14
8 B 7 6 7 5 18
9 C 2 6 7 2 15
对于如何最好地解决这个问题,我将不胜感激。我试图创建一个临时表,使用游标滚动浏览每条记录,但无法获得正确的查询。
(我之前曾问过一个相关问题,但我没有正确地提出问题并弄错了示例。需要 Microsoft Access 中查询(视图)的帮助)