我有一个包含时间戳和温度的表。我想得到每天温度的最大变化率。有没有公式或聚合函数可以做到这一点?我可以通过一个程序获得最高的速率,该程序按顺序获得每一行,并确定两行之间的变化,但不知道是否有一个函数为此做好了准备。
ccrfmcuu1#
SQL具有LAG函数,可用于从上一行获取值。使用类似下面的SQL语句,我可以获得之前的温度和自上次阅读以来的时间:
LAG
SELECT datetime, temp, (LAG(temp, 1, 0) OVER (ORDER BY datetime) - Temp) PrevTemp, (julianday(datetime) - LAG(julianday(datetime), 1, 0) OVER (order by datetime))*24*60 TimeDIff FROM temperature ORDER BY datetime
结果是这样的:
'2022-08-11 22:44:40', 33.000, -0.06300000000000239, 12.316666916012764 '2022-08-11 22:45:11', 32.937, 0.06300000000000239, 0.5166665464639664 '2022-08-11 22:47:15', 33.000, -0.06300000000000239, 2.066666856408119 '2022-08-11 22:48:16', 32.937, 0.06300000000000239, 1.016666516661644 '2022-08-11 22:49:18', 33.000, -0.06300000000000239, 1.0333330929279327
1条答案
按热度按时间ccrfmcuu1#
SQL具有
LAG
函数,可用于从上一行获取值。使用类似下面的SQL语句,我可以获得之前的温度和自上次阅读以来的时间:
结果是这样的: