相同条件下 2 条记录之间的 SQLite 查询 select

SQLite query select between 2 records on same condition

我正在尝试计算 1 table 上的两条记录之间的(以分钟为单位)并且 WHERE 子句是相同的条件。

_id  | venue_id | act_time  | status |
 1   |  1       | 13:30     | 0      |
 2   |  1       | 15:40     | 1      |
 3   |  2       | 13:03     | 0      |
 4   |  2       | 16:06     | 1      |

当我执行这样的查询时:

SELECT _id, venue_id, status, (julianday(act_time IN (SELECT act_time FROM reports WHERE venue_id='1' AND status='1')) - julianday(act_time))*1440 AS duration FROM reports WHERE venue_id='1' AND status='0'

但是,结果显示计算错误

请帮我解决这个问题的正确查询是什么?

所以,如果我计算 15:40 - 13:30 之间的持续时间(在 venue_id='1')= 130 分钟。

谢谢。

IN 运算符检查左侧的值是否包含在右侧的值集中,returns 布尔结果(0 或 1)。

您只想直接使用act_time值;下降 act_time IN.