我有一个带有名为“事件”的表的 SQLite 数据库,它具有以下结构:
rowid ID startTimestamp endTimestamp
1 00:50:c2:63:10:1a 1000 1010
2 00:50:c2:63:10:1a 1100 1030
3 00:50:c2:63:10:1a 1090 1110
4 00:50:c2:63:10:1a 1210 1310
.
.
.
计算 startTimestamp 和 endTimestamp 之间的平均时间是没有问题的:
SELECT ID, avg(endTimestamp - startTimestamp) AS duration FROM events WHERE senderID ="00:50:c2:63:10:1a"
但是现在我想在一行和下一行之间计算 endTime 和 startTime 之间的平均差异,这对于我的示例来说意味着:
1100-1010 = 90
1090-1030 = 60
1210-1110 = 100
差值之和 = 90 + 60 + 100 = 250
平均差 = 250 / 3 = 83,33
有没有办法用 SQL 查询来做到这一点?或者是否有必要用 PHP 编写一段代码?