【发布时间】:2011-03-23 09:11:30
【问题描述】:
我有一个包含带有时间戳的汇总结果的表格 - 这意味着每次的每个结果都是迄今为止的总数:
date | time | ip | result
---------------------------------------
2011-03-01 | 10:00 | 10.0.0.1 | 200
2011-03-01 | 11:00 | 10.0.0.1 | 303
2011-03-01 | 12:00 | 10.0.0.1 | 415
2011-03-01 | 13:00 | 10.0.0.1 | 628
2011-03-01 | 10:00 | 10.0.0.2 | 198
2011-03-01 | 11:00 | 10.0.0.2 | 234
2011-03-01 | 12:00 | 10.0.0.2 | 373
2011-03-01 | 13:00 | 10.0.0.2 | 512
我正在尝试制定一个查询,以获取每个时间范围之间的增量:
date | time | ip | diff
---------------------------------------
2011-03-01 | 10:00 | 10.0.0.1 | 200
2011-03-01 | 11:00 | 10.0.0.1 | 103
2011-03-01 | 12:00 | 10.0.0.1 | 112
2011-03-01 | 13:00 | 10.0.0.1 | 213
2011-03-01 | 10:00 | 10.0.0.2 | 198
2011-03-01 | 11:00 | 10.0.0.2 | 36
2011-03-01 | 12:00 | 10.0.0.2 | 139
2011-03-01 | 13:00 | 10.0.0.2 | 139
...
因此,每个日期/ip 分组的每一行都会减去它之前的一行(或 0)。 有什么简单的方法可以做到这一点吗?谢谢。
【问题讨论】:
-
您可能想详细说明如何处理日期更改。结果是每天从零开始,还是只在文件开头从零开始?
-
如果有一个 11:00 的数据点并且没有 10:00、只有 09:00 或没有那一天之前怎么办?
标签: mysql query-help