我有一个SQLite数据库,其中包含事件日志记录以及时间戳和事件详细信息。其中一些事件是系统生成的警报。下面的伪代码可以最好地解释我需要做的事情:
for each event where type="alarm" get preceeding events between event.timestamp - 1 hour and event.timestamp
我现在要做的是查询数据库一次以查找每个警报的时间戳,然后遍历结果以获取每个警报的所有时间段。这创建了一个我想用于关联规则挖掘的事务列表,但是我觉得离开SQL然后循环返回它效率低下。我已经搜索了该问题的答案,但我认为找不到合适的关键字来搜索。
我已经编辑了这个问题,因为它不像我自己想象的那么清晰
答案 0 :(得分:0)
也许是自我加入?
SELECT {column list}
from events e1, events e2
where e1.type="alarm"
and e2.time between (date(e1.time),'-1 hour') and e1.time