Как выбрать несколько рядов из определенной временной отметки в SQLite Query - PullRequest
0 голосов
/ 20 ноября 2018

У меня есть база данных SQLite, содержащая записи журнала событий с отметкой времени и сведениями о событии.Некоторые из этих событий являются сигналами тревоги, генерируемыми системой.То, что мне нужно сделать, лучше всего объяснить в следующем псевдокоде:

for each event where type="alarm" get preceeding events between event.timestamp - 1 hour and event.timestamp

Теперь я делаю один раз запрос к базе данных, чтобы найти временную метку каждого сигнала, а затем зациклился на результате, чтобы получить всепериоды времени для каждой тревоги.Это создает список транзакций, которые я хочу использовать для анализа правил ассоциации, но я чувствую, что оставить SQL для последующего возврата к нему в цикле неэффективно.Я искал ответы на этот вопрос, но думаю, что не могу найти правильные ключевые слова для поиска.

Я отредактировал вопрос, так как он был не так ясен, как я думал

1 Ответ

0 голосов
/ 21 ноября 2018

Возможно самостоятельное присоединение?

SELECT {column list}
from events e1, events e2
where e1.type="alarm"
and e2.time between (date(e1.time),'-1 hour') and e1.time
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...