我有table1,它有仪表读数字段。我想计算仪表读数record1和仪表读数记录2之间的差值。
发布于 2014-03-04 17:47:50
假设您在table1中有一个连续的ID字段,下面的查询将为您提供所需的结果:
SELECT T1.ID, T1.MeterReading, T2.MeterReading, [T2].[MeterReading]-[T1].[MeterReading] AS Difference
FROM tbl AS T1, tbl AS T2
WHERE (((T1.ID)=[T2].[ID]-1));但是,如果ID是autonumber类型,您可能会遗漏一些数字并失去邻接性,因此我建议对ID使用number类型,并使用一些代码来确保邻接性。
发布于 2014-03-06 16:18:38
我假设了表和字段的名称,因此显然您应该更改它们以适合您的模式。
Dim rs AS new ADODB.Recordset
Dim PrevReading AS Long
rs.CursorLocation = adUseClient
rs.Open "SELECT * FROM tblReadings ORDER BY ReadingDate",CurrentProject.Connection,adOpenKeyset, adLockOptimistic
Do While Not rs.Eof
rs.Field("Difference")=rs.Field("MeterReading") - PrevReading
PrevReading = rs.Fields("MeterReading")
rs.MoveNext
Loop
rs.Closehttps://stackoverflow.com/questions/22165402
复制相似问题