Я пытаюсь исключить некоторые данные в своем запросе, но не смог сам разобраться после поиска по ключевым словам.
![enter image description here](https://i.stack.imgur.com/GOuBH.png)
Выше приведен пример таблицы со столбцами, которые у меня есть со следующим запросом:
SELECT id, date, health, state, reason FROM table1
моя цель - исключить (состояние = НАЧАЛО) и случаи, когда (здоровье = НЕТ && причина = REASON1) если это произойдет через 10 минут после начала START. Можно иметь (здоровье = НЕТ && причина = REASON1) после 10 минут события START, и я хочу оставить их там, как есть, если условие в течение 10 минут не соответствует.
Ниже приведена цель Я хотел достичь.
![enter image description here](https://i.stack.imgur.com/AxHeO.png)
Исключить (состояние = НАЧАЛО) было очень легко:
SELECT id, date, health, state, reason FROM table1 WHERE state not in ('START')
но я не смог выяснить, как исключить (здоровье = НЕТ && причина = REASON1), если это происходит через 10 минут после начала START.
Моя идея заключалась в использовании DATEDIFF, а не в существовании, как в следующем :
SELECT id, date, health, state, reason FROM table1 WHERE state not in ('START') and (health = 'NO' and reason = 'REASON1' and DATEDIFF(minute,(current_date)?,(last starting time)?) < 15)
(current_date)?, (Время последнего запуска)? части я не уверен, как этого добиться. Я думаю, что я должен использовать NOT EXISTS также для второго условия, но тот, который я попробовал, не сработал. Кто-нибудь может помочь или дать мне направление на go?