В настоящее время я использую этот запрос (в SQL Server) для подсчета количества уникальных элементов каждый день:
SELECT Date, COUNT(DISTINCT item)
FROM myTable
GROUP BY Date
ORDER BY Date
Как я могу преобразовать это, чтобы получить за каждую дату количество уникальных элементов за последние 3 дня (включая текущий день)?
Вывод должен состоять из таблицы с двумя столбцами: одна колонка со всеми датами в исходной таблице. Во втором столбце у нас есть количество уникальных элементов за дату.
например, если исходная таблица:
Date Item
01/01/2018 A
01/01/2018 B
02/01/2018 C
03/01/2018 C
04/01/2018 C
По моему запросу выше я получаю уникальный счет за каждый день:
Date count
01/01/2018 2
02/01/2018 1
03/01/2018 1
04/01/2018 1
и я хочу получить в качестве результата уникальный счет в течение 3 дней:
Date count
01/01/2018 2
02/01/2018 3 (because items ABC on 1st and 2nd Jan)
03/01/2018 3 (because items ABC on 1st,2nd,3rd Jan)
04/01/2018 1 (because only item C on 2nd,3rd,4th Jan)