Как выбрать уникальные значения из таблицы и выбрать только временные метки, где время между каждой записью превышает 10 секунд

#sqlite

#sqlite

Вопрос:

У меня есть следующая таблица истории:

 id, time, timestamp, mode
    1   18.03.2019 13:55:55 1552913755  
    2   26.03.2019 15:46:47 1553611607  Tool start
    3   26.03.2019 15:46:51 1553611611  Tool start
    4   26.03.2019 15:47:32 1553611652  Tool start
    5   26.03.2019 17:19:53 1553617193  Tool start
    6   26.03.2019 17:20:54 1553617254  Suspend
    7   26.03.2019 17:20:54 1553617254  Suspend
    8   26.03.2019 17:20:54 1553617254  Suspend
    9   26.03.2019 17:20:55 1553617255  Suspend
    10  27.03.2019 07:26:28 1553667988  Suspend
    11  27.03.2019 07:26:29 1553667989  Suspend
    12  27.03.2019 07:26:29 1553667989  Suspend
    13  27.03.2019 07:26:29 1553667989  Suspend
    14  27.03.2019 08:09:00 1553670540  Resume
    15  27.03.2019 08:09:10 1553670550  Resume
    16  27.03.2019 08:09:10 1553670550  Resume
    17  27.03.2019 08:09:10 1553670550  Resume
    18  27.03.2019 08:09:33 1553670573  Tool start
    19  27.03.2019 08:27:41 1553671661  Tool start
    20  27.03.2019 08:30:21 1553671821  Tool start
    21  27.03.2019 08:30:25 1553671825  Tool start
    22  27.03.2019 08:31:12 1553671872  Tool start
  

Теперь я хочу читать только уникальные записи и, кроме того, только значения, где временная метка составляет> 10 минут между каждой строкой.
Идея состоит в том, чтобы видеть только одну запись «Приостановить» и «Возобновить».
Может случиться так, что через 15 минут должна отобразиться другая запись с Suspend.

Этот запрос покажет мне уникальные значения:

 SELECT * FROM history GROUP by timestamp
  

Но я не могу показать только одно приостановление и возобновление в диапазоне 15 минут.

Комментарии:

1. Каков ваш ожидаемый результат для этих данных?

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