我在这里有一个非常简单的表:
表
1
ID
日期
1 日期 2
日期 3
我想按月份和ID汇总数据,所以查询结果如下:
查询table1
ID
月份的结果
Date1 非空月份的计数 Date2 非空
月份的计数 Date3 非空月份的
计数
我目前在下面有这个查询,根据@month 指定的内容仅拉一个月:
Select ID, @month as [Month]
Sum((Case When Month(Date1)=@month then 1 else 0 END)) as [Date1 Count],
Sum((Case When Month(Date2)=@month then 1 else 0 END)) as [Date2 Count],
Sum((Case When Month(Date3)=@month then 1 else 0 END)) as [Date3 Count],
From Table1
Group by ID
但是我想提取所有 12 个月,但是数据库没有月份表或日历表,我如何创建一个查询,该查询将包括每个 ID 的所有 12 个月并获取 Date1、Date2 和 Date3 的相应月度计数? 顺便说一句,许多条目的日期之一为空,例如 Date1 和 Date3 = Null 而 Date2 = '01/01/2008'。提前致谢!