У меня есть база данных PostgreSQL, и у меня есть таблица, к которой я обращаюсь с запросом, чтобы определить, какие печати были обновлены между первым циклом созданного времени_темпера и самым последним циклом созданного времени_стата. Вот пример таблицы, которая называется event_log_summary.
press_id cycle_number created_timestamp
1 1 2020-02-07 16:07:52
1 2 2020-02-07 16:07:53
1 3 2020-02-07 16:07:54
1 4 2020-04-01 13:23:10
2 1 2020-01-13 8:33:23
2 2 2020-01-13 8:33:24
2 3 2020-01-13 8:33:25
3 1 2020-02-21 18:45:44
3 2 2020-02-21 18:45:45
3 3 2020-02-26 14:22:12
Это запрос, который я использовал, чтобы получить вывод из трех столбцов: press_id, mincycle, max_cycle, но затем я хочу сравнить maxcycle made_timestamp для mincycle create_timestamp и посмотрите, есть ли между ними хотя бы x промежуток времени, скажем, по крайней мере 1 день, я не уверен, как это реализовать.
SELECT
press_id,
MIN(cycle_number) AS minCycle,
MAX(cycle_number) AS maxCycle
FROM
event_log_detail
GROUP BY
press_id
Я пробовал разные вещи, такие как использование WHERE (MAX (cycle_number) - MIN (cycle_number> 1), но я довольно новичок в SQL и не совсем знаю, как реализовать это Выходная информация, которую я ищу, будет иметь разницу как минимум в один день:
press_id
1
3
У прессов 1 и 3 их максимальный цикл создан_время_стампы не менее чем на 1 день, чем их минимальный цикл create_timestamp. Я просто ищу press_ids, чей первый цикл и последний цикл имеют разницу не менее 1 дня, мне не нужна никакая другая информация о выходе, только один столбец с press_ids. Любая помощь будет принята. Благодаря.