Краткий обзор; представьте себе сценарий, в котором только 1 идентификатор (давайте назовем его 123) должен вызывать только 1 событие (давайте назовем его AAA), но из-за характера приложения идентификатор 123 вызвал событие AAA один раз в 5 дней, реально 1 идентификатор должен только иметь 1 триггер события (есть разные сценарии, почему этого не происходит). В общем, вся идея здесь в том, чтобы получить то, что мы называем последним касанием, то есть сказать, что за 5 дней, когда событие AAA запускается с идентификатором 123 (изо дня в день), подтвержденный триггер этого должен быть только в день 5, и я хотел бы исключить счет ID 123 в день 1,2,3 и 4.
Чтобы лучше представить вещи;
Пример данных
Date ID Event
=========================
01-09-2018 123 AAA
01-09-2018 456 AAA
02-09-2018 123 AAA
03-09-2018 123 AAA
04-09-2018 123 AAA
05-09-2018 123 AAA
Токовый выход
Date Count
=================
01-09-2018 2
02-09-2018 1
03-09-2018 1
04-09-2018 1
05-09-2018 1
Желаемый вывод
Date Count
==================
01-09-2018 1
02-09-2018 0
03-09-2018 0
04-09-2018 0
05-09-2018 1
Мой запрос:
SELECT
date,
COUNT(DISTINCT id)
FROM
[data]
WHERE
event = 'AAA'
AND date >= DATE_SUB(NOW(),INTERVAL 5 DAY)
GROUP BY
date
Очень простой запрос, как и в настоящее время, я делаю то, что я извлекаю данные, используя вышеуказанный запрос, и я также извлекаю всю базу данных и вручную обрабатываю ее, используя консистентную смазку в Excel. Если бы я мог построить запрос, который достигает желаемого результата, был бы очень благодарен. (Облегчает боль, когда я автоматизирую их с помощью Supemetrics на ежедневной основе). Был бы признателен за идеи о том, как этого добиться (ссылки на учебники / методы, указатель, что угодно). Большое спасибо!