我有一个sqlite3数据库,其中一个表如下:
Time Val1 Val2 Val3 10:12:03 3.4 4.3 5
10:12:04 3.2 4.1 6 10:12:05 3.3 4.6 5
11:03:19 2.4 5.7 4 11:03:20 2.5 5.2 4
11:03:21 2.7 5.9 5 ...
两行之间超过1秒的时间范围表示第一个工作间隔的结束和第二个工作间隔的开始。
所以,第一个工作间隔是 10:12:03 - 10:12:05
第二个工作间隔是 11:03:19 - 11:03:21
等等。
如何使用sql来知道间隔开始的所有时间戳(10:12:03,11:03:19…)?
1条答案
按热度按时间yjghlzjz1#
这是一个间隙和孤岛问题:您希望显示与前一个(即每个孤岛的开头)不相邻的行。
下面是一种使用窗口函数的方法: