【发布时间】:2020-07-22 12:19:22
【问题描述】:
我的SQLite 数据库中有以下信息:
ID | timestamp | val
1 | 1577644027 | 0
2 | 1577644028 | 0
3 | 1577644029 | 1
4 | 1577644030 | 1
5 | 1577644031 | 2
6 | 1577644032 | 2
7 | 1577644033 | 3
8 | 1577644034 | 2
9 | 1577644035 | 1
10 | 1577644036 | 0
11 | 1577644037 | 1
12 | 1577644038 | 1
13 | 1577644039 | 1
14 | 1577644040 | 0
我想执行一个查询,返回构成episode 的元素。 episode 是一组符合以下要求的有序寄存器:
- 第一个元素大于零。
- 第一个元素的前一个元素为零。
- 最后一个元素大于零。
- 最后一个元素的下一个元素为零。
本例中查询的预期结果是这样的:
[
[{"id":3, tmstamp:1577644029, value:1}
{"id":4, tmstamp:1577644030, value:1}
{"id":5, tmstamp:1577644031, value:2}
{"id":6, tmstamp:1577644032, value:2}
{"id":7, tmstamp:1577644033, value:3}
{"id":8, tmstamp:1577644034, value:2}
{"id":9, tmstamp:1577644035, value:1}],
[{"id":11, tmstamp:1577644037, value:1}
{"id":12, tmstamp:1577644038, value:1}
{"id":13, tmstamp:1577644039, value:1}]
]
目前,我正在避免这个查询,我正在使用一个辅助表来存储剧集的初始和结束时间戳,但这只是因为我不知道如何执行这个查询。
因此,我的问题非常简单:有谁知道我如何执行此查询以获得类似于所述输出的内容?
【问题讨论】:
-
你要返回什么?