两个指定时间之间的差异,具有未知时间的数据快照


Difference between two specified times with snapshots of data at unknown times

我希望能够获得表中最接近所提供日期的两行之间的更改。表中的行存储特定时间的数据,而不是上一个快照中的增量。

我希望能够为查询提供两个可能不包含在表中的日期,并获得该日期范围内最接近的两个时间段的计数之差。

下面是一个简单的表格示例:

objectID    snapshotTime            dataCount
1           2013-01-01 13:00:00     40
1           2013-01-02 18:00:00     51
1           2013-01-02 19:00:00     59
1           2013-01-03 01:00:00     70
1           2013-01-04 14:00:00     82
1           2013-01-05 17:00:00     99
1           2013-01-06 20:00:00     107

给定日期2013-01-01 20:00:002013-01-06 12:00:00,查询应返回48(99-51)。

我该如何编写这样一个高效运行的查询?

尝试两个查询,每个查询都使用where将时间保持在给定的约束下,并使用ASC确保获得下一条记录。如果你愿意,使用LIMIT 1,但没有什么区别。然后使用PHP获取每条记录并减去差值。