Я пытаюсь запустить запрос, который позволит мне увидеть, где у нас запущены сценарии старше 3 месяцев за последние 30 дней доставки, поэтому мы знаем, что их нужно обновить. Я смог построить запрос, чтобы показать мне все сценарии и даты их последней регенерации (с указанием конкретных дат), но не могу сработать;
- Как посмотреть данные только за последние 30 дней.
- Как просмотреть только сценарии, в которых столбец date_regen старше 3 месяцев с сегодняшней даты — из данных за последние 30 дней, которые я просматриваю.
ПРИМЕР ТАБЛИЦЫ
visit_datetime | client | script | date_regen |
2019/10/04 03:32:51 | 1 | script1 | 2019-09-17 13:12:01 |
2019/09/27 03:32:52 | 2 | script2 | 2019-07-18 09:44:02 |
2019/10/06 03:32:50 | 3 | script3 | 2019-03-18 14:08:02 |
2019/10/02 06:28:24 | 4 | script6 | 2019-09-11 10:02:01 |
2019/03/01 06:28:24 | 5 | script7 | 2019-02-11 10:02:01 |
Приведенные ниже примеры не смогли дать мне то, что мне нужно. Моя идея заключалась в том, чтобы получить текущую дату (используя now()), а затем, зная это, просмотреть все данные за последние 30 дней. После этого я бы тогда ГДЕ месяц, -3 (так что date_regen 3+ месяца от текущей даты. Однако я не могу заставить его работать. Я также пытался сделать -days, но это также не увенчалось успехом.
-- WHERE MONTH = MONTH(now()) AND YEAR = YEAR(now())
-- WHERE date_regen <= DATEADD(MONTH,-3,GETDATE())
-- WHERE DATEDIFF(MONTH, date_regen, GetDate()) >= 3
Код, который я сейчас использую для получения таблицы
SELECT split_part(js,'#',1) AS script,
date_regen,
client
FROM table
WHERE YEAR=2019 AND MONTH=10 AND DAY = 01 (This where is irrelevant as I would need to use now() but I don't know what replaces "YEAR/MONTH/DAY ="
GROUP BY script,date_regen,client
ORDER BY client DESC;
КОНЕЧНАЯ ЦЕЛЬ Я должен видеть только клиента 3, так как клиенты 1+2+4 имеют теги, в которых date_regen находится за последние 3 месяца, а у клиента 5 значение visit_datetime выходит за пределы 30.
visit_datetime | client | script | date_regen |
2019/10/06 03:32:50 | 3 | script3 | 2019-03-18 14:08:02 |