У меня есть [Системная] таблица с полем ContractDateEnd. Если это значение равно нулю, система «активна»
Моя цель - рассчитать количество активных систем по месяцам для текущего года
Итак, для каждого месяца я должен суммировать систему, если ContractEndDate = NULL или Month (ContractEndDate)> = Номер месяца
Create TABLE Systems (
[ID] int,
[ContractStartDate] date,
[ContractEndDate] date)
INSERT INTO Systems ([ID], [ContractStartDate], [ContractEndDate])
VALUES
(1, '1/1/2018', '08/30/2020'),
(2, '1/1/2019', '05/31/2020'),
(3, '1/6/2020', NULL)
Мне удалось получить активные месяцы по системному идентификатору
ID January February March April May June July August September October November December
1 1 1 1 1 1 1 1 1 0 0 0 0
2 1 1 1 1 1 0 0 0 0 0 0 0
3 1 1 1 1 1 1 1 1 1 1 1 1
Но я хотел бы иметь это:
Month Total
January 3
February 3
March 3
April 3
May 3
June 2
July 2
August 2
September 1
October 1
November 1
December 1
Это решение SQL Подсчет по дате активности использовать Join, но не считать нули ..
Как это сделать?
Спасибо Марко