SQLite查询在相同条件下选择2条记录

时间:2015-03-08 05:17:57

标签: sqlite time count between

我试图在1个表上的两个记录之间计算(以分钟为单位),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分钟。

谢谢。

1 个答案:

答案 0 :(得分:1)

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

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