我有一个查询,总计了2010年1月1日所有活动的案例.
SELECT COUNT(CaseID) AS Total
FROM dbo.ClientCase
WHERE (CaseStartDate <= CONVERT(DATETIME, '2010-01-01 00:00:00', 102)) AND (CaseClosedDate >= CONVERT(DATETIME, '2010-01-01 00:00:00', 102)) OR (CaseClosedDate IS NULL)
GROUP BY CaseStartDate
Run Code Online (Sandbox Code Playgroud)
我还有一个Calendar表,我可以使用它创建一个查询,从1月1日,2月1日,3月1日到12月1日返回12个日期.
我无法弄清楚如何组合2个查询,所以我得到每个月1日的所有案例总数的计数.
我需要看到类似的东西
Month Total
Jan 102
Feb 130
Mar 145
.....
Dec 162
Run Code Online (Sandbox Code Playgroud)
SELECT cal.MonthName, COUNT(CaseID) AS Total
FROM dbo.calendarTable cal
LEFT OUTER JOIN dbo.ClientCase cc
ON Month(cal.MonthStartDate) = Month(CaseStartDate)
WHERE
(CaseStartDate <= CONVERT(DATETIME, cal.MonthStartDate, 102)) AND
(CaseClosedDate >= CONVERT(DATETIME, cal.MonthStartDate, 102)) OR
(CaseClosedDate IS NULL)
GROUP BY cal.MonthName
Run Code Online (Sandbox Code Playgroud)