我正在使用包含日期,单位ID,仪表读数和更正的Access 2010表格。我想通过取当前日期并与前一次相减来读取仪表的日常读数。这里是我有的表格的一个例子:如何区分当前数据和以前的数据?
InputDate | UnitID | MeterReading | Correction
--------- | ------ | ------------ | ----------
11/1/2016 | U1 | 41476 | 10000
11/1/2016 | U2 | 5991 | 10000
11/1/2016 | U3 | 164205 | 1000000
11/1/2016 | U4 | 11160 | 100000
11/2/2016 | U1 | 41490 | 10000
11/2/2016 | U2 | 5991 | 10000
11/2/2016 | U3 | 164205 | 1000000
11/2/2016 | U4 | 11169.3 | 100000
我试过这样做了许多不同的方法。我得到它的唯一方法是做一个查询来为每个单元拆分表(例如U1,U2等)。从那我会查询该结果,并做这个计算:
(
([MeterReading]+[Correction]) -
(DLookUp("MeterReading", "tblA", "[tblA].[InputDate] = #" &
DateAdd("d",-1,[tblA].[InputDate]) & "#")+[Correction])
)
然后,我会做另一个查询按日期分组的所有数据。
我的问题是如果有一个更直观的方式来做到这一点?我已经研究过如何尝试执行SQL查询,嵌套查询以及按Unit_ID进行分组,但是我的计算已关闭。我认为DLookUp在计算时没有考虑正确的单位,因为同一天有多个单位。另外,当我尝试按InputDate和UnitID进行分组时,我会得到“您的查询不包含指定的表达式”。我是SQL语言的新手,所以任何帮助将不胜感激。
样本输出是:
InputDate | UnitID | MeterRunTime
--------- | ------ | ------------
11/2/2016 | U1 | 14
11/2/2016 | U2 | 0
11/2/2016 | U3 | 0
11/2/2016 | U4 | 9.3
你能给出你期望的样本输出吗? –
SQL沙箱http://rextester.com/GYVR98570 - 但我不确定你的意思是“我想通过取当前日期并与前一次相减来读取仪表的日常读数”;你是否在寻找每日平均读数(如每日平均使用量)? – Aron
新增样本输出@JyotiVinayPandey – BESGOTCIY