SQL Server-每周对结果进行分组

SQL Server-每周对结果进行分组,sql,sql-server,sql-server-2008,Sql,Sql Server,Sql Server 2008,我是SQL的新手,需要一些帮助 我有两个字段,MoveInDate和MoveOutDate,它们都是日期字段。我想生成一个结果,统计每周搬入和搬出的数量。输出应如下所示: Week Start Week End Move-In-Count Move-Out-Count 1/20/2014 1/26/2014 0 4 1/27/2014 2/2/2014

我是SQL的新手,需要一些帮助

我有两个字段,MoveInDate和MoveOutDate,它们都是日期字段。我想生成一个结果,统计每周搬入和搬出的数量。输出应如下所示:

Week Start      Week End              Move-In-Count      Move-Out-Count

1/20/2014       1/26/2014                  0                    4

1/27/2014       2/2/2014                   1                    0

我正在使用SQLServer2008

像这样的事情应该行得通

Select COUNT(Primary_Key) As MoveInCount

FROM [dbo].[tableName]

where MoveInDate between WeekStartDate and WeekEndDate

我建议使用日期维度,因为您希望每周分组

您可以在此处获得一个现成的日期维度以及要加载到数据库中的脚本:

加载维度后,您可以按周分组,并按迁入、迁出日期数进行计数。

可能重复: