PHP Oracle从当前行与上一行的减法
我有如下数据:PHP Oracle从当前行与上一行的减法,php,sql,oracle,Php,Sql,Oracle,我有如下数据: Time | Count 17:31:49 17:35:52 17:36:54 17:38:12 17:39:12 17:40:12 17:41:57 17:43:47 17:45:27 17:48:12 17:48:17 现在我需要用前一行减去当前行 所以这将是这样的: Time | Count 17:31:49 formula: 17:35:52 - 17:31:49 = 04:03 17:35:52 formula: 17:36:54 -
Time | Count
17:31:49
17:35:52
17:36:54
17:38:12
17:39:12
17:40:12
17:41:57
17:43:47
17:45:27
17:48:12
17:48:17
现在我需要用前一行减去当前行
所以这将是这样的:
Time | Count
17:31:49 formula: 17:35:52 - 17:31:49 = 04:03
17:35:52 formula: 17:36:54 - 17:35:52 = 01:02
17:36:54 formula: 17:38:12 - 17:36:54 = 01:58
17:38:12 and so on
17:39:12
17:40:12
17:41:57
17:43:47
17:45:27
17:48:12
17:48:17
是否可以只使用query进行计算,或者需要PHP(我正在使用这个)来进行计算?基本上,您可以使用
lead()
:
尚不清楚时间的数据类型是什么。如果是日期
,则可以进行减法运算,得到一个十进制数,表示天数的差值;您可以格式化或使用算术来获得所需的结果
如果它是其他数据类型(字符串?),那么您需要构建自己的逻辑来处理减法
select time, lead(time) over(order by time) - time diff
from mytable