我有一个数据框,看起来像下面的列:
ID, STATE and TIMESTAMP
。
数据帧按照ID and TIMESTAMP
排序。
我们需要找出state S1 to S2
之间的时间间隔。
注意:对于特定的ID,我们可以在S1到S2之间进行多次转换。而且状态始终以S1开始,以S2结尾。
查看所附图片以获取更多信息:
答案 0 :(得分:1)
select id,
unix_timestamp(timestamp) -
unix_timestamp(lag(timestamp) over(partition by id order by timestamp)) as time_diff
from table;