Я пытаюсь показать совокупное количество всех закрытых заданий на 2019 год, сгруппированных по проектам.Я сделал, я рассматриваю, и это работает частично.Но чего я хочу достичь, так это когда у меня нет закрытых задач в 2019 году, но у меня они есть в предыдущие годы, я хочу добавить число этих задач к значению января 2019 года.
Я сделал этопредставление, которое считает все задачи совокупными:
SELECT
*,
SUM(a.cnt) OVER (PARTITION BY Project ORDER BY Jahr,Monat,Project RANGE UNBOUNDED PRECEDING) as cum_cnt_of_tasks
FROM
(
SELECT count(distinct [StoryID])as cnt,datepart(month,[Story_Resolutiondate]) as Monat, datepart(year,[Story_Resolutiondate]) as Jahr,v.ProjectID as Project
FROM [Story]s
join [Epic]e on s.EpicID=e.EpicID
join [Project]v on e.ProjectID=v.ProjectID
group by datepart(month,[Story_Resolutiondate]) ,datepart(year,[Story_Resolutiondate]),v.ProjectID
) AS a
Это результат:
Monat Jahr Project cum_cnt_of_tasks
6 2017 259052 1
7 2017 259052 2
8 2017 259052 3
9 2017 259052 4
1 2019 255403 4
2 2019 255405 2
Но я хочу превратить это в:
Monat Jahr Project cum_cnt_of_tasks
1 2019 259052 4
1 2019 255403 4
2 2019 255405 2
Так что я долженвозьмите последнее совокупное значение для проекта 259052 за предыдущие годы и отобразите его в значение для января 2019 года:
Таким образом, последнее совокупное значение для проекта 259052 было в сентябре (Monat = 9) 2017.Я хочу сопоставить это значение с январем 2019 года.
Monat Jahr Project cum_cnt_of_tasks
6 2017 259052 1
7 2017 259052 2
8 2017 259052 3
*9 2017 259052 4*
INTO
Monat Jahr Project cum_cnt_of_tasks
*1 2019 259052 4*
@ Гордон Линофф Это работает, если у меня нет данных после января 2019 года, но если они у меня есть, то я получаю из этого набора:
M J Project cnt
7 2018 17323 34
8 2018 17323 36
9 2018 17323 37
10 2018 17323 40
11 2018 17323 41
12 2018 17323 43
1 2019 17323 44
2 2019 17323 47
этот набор:
m j Project cnt
2 2019 17323 47
Но мне действительно нужно:
m j Project cnt
1 2019 17323 44
2 2019 17323 47
Так что, если январь 2019 уже есть в наборе данных, я теряю его с вашим запросом