Как группировать по неделям, начиная с пятницы, используя SQL? - PullRequest
0 голосов
/ 20 апреля 2020

У меня есть данные, которые всегда начинаются с пятницы, но дата может меняться в любое время года. Я хочу сгруппировать по дате и категории, чтобы получить сумму соответствующих счетчиков за неделю и по категориям. Мне также нужен столбец с начальной датой этой недели.

df:
Date  Category  Count  
20/04/2018  A  5  
21/04/2018  A  10
...
16/04/2020  A  52

Я хочу получить результирующий набор данных, который имеет:

df:
Week/Starting  Category  sum  
20/04/2018  A  28  
27/04/2018  A  95
...
10/04/2020  A  154

Я пробовал этот код:

set datefirst 5;
SELECT 
DATEPART(week, Date) Week_No,
min(Date) as [Week/Starting],
Category,
SUM(coalesce(Count,0)) as Sum
FROM TABLE
GROUP BY DATEPART(week, Date), Category
order by DATEPART(week, Date), Category

Однако это дает мне результат следующего года, то есть 2019 года, начиная с 01.01 2019 года.

...