0
嗨有一个安全摄像机,记录在连续模式。它将记录的记录保存到一个sqlite数据库文件中,记录到几个不同的文件中。我试图在录音中找到时间差距。问题是某些记录事件重叠,所以我不能简单地找到开始时间和停止时间之间的时间差。这是我目前使用的查询:查找时间记录差距
select b.id, datetime(b.starttime, "-8 Hour") as starttime, datetime(b.stoptime, "-8 Hour") as endtime, b.recording_id
from blocks b, recordings a
where b.recording_id = a.id and a.recording_type_id = 1 order by b.starttime asc
下面是从查询的摘录,我排序开始时间:
+------------------------------------------------------------+
| id starttime endtime recording_id |
+------------------------------------------------------------+
| ---- ------------------- ------------------- ------------ |
| 6824 2016-03-22 12:32:48 2016-03-22 12:38:08 389 |
| 6825 2016-03-22 12:38:08 2016-03-22 12:43:28 389 |
| 6826 2016-03-22 12:39:00 2016-03-22 12:41:10 418 |
| 6827 2016-03-22 12:43:28 2016-03-22 12:48:48 389 |
| 6828 2016-03-22 12:48:48 2016-03-22 12:54:08 389 |
| 6829 2016-03-22 12:54:08 2016-03-22 12:59:28 389 |
+------------------------------------------------------------+
我从ID 6826的时间间隔,以ID 6827,其实当没有一个。 ID 6825排队ID 6827.
任何想法如何使这项工作。我考虑每天每秒钟敲击以测试它是否处于任何时间之间,并创建一条记录,但这只是残酷的。
在您的问题中添加您的查询,以便我们进行调试。这听起来像你没有在你的逻辑中考虑Recording_Id。 –
也许是这样的情况,但我仍然看到一种情况,那里会有重叠的时间。如果我作为例子创建一个子查询,首先按recording_id排序,我以后如何整理它。我仍然有重叠处理。 – WillemB
尝试查找在所有可用分段中找不到的“停止时间”值: – Stavr00