2015-12-30 48 views
-2

我有一个表,我想按列显示数据。我已经完成了一个星期,但在一个月的所有周里都做不到。按星期组使用SQL Server 2008

在我的表我想组由每周ID数据,总结其

我的样本数据是在这里:SqlFiddle

样品O/P

121212 1212 7646 45647 
+3

可能是我缺少的东西,但你如何期待你提供的表的输出? –

+0

4个不同栏目的4周输出@RahulTripathi –

+0

它会一直保持4周,或者是一个动态的时期,即最后4个整周? –

回答

0

检查这

SELECT month 
    ,SUM(CASE WHEN day between 1 and 7 then Value END) as WEEK_1_VAL 
    ,SUM(CASE WHEN day between 8 and 14 then Value END) as WEEK_2_VAL 
    ,SUM(CASE WHEN day between 15 and 21 then Value END) as WEEK_3_VAL 
    ,SUM(CASE WHEN day between 22 and 28 then Value END) as WEEK_4_VAL 
    ,SUM(CASE WHEN day between 29 and 31 then Value END) as WEEK_5_VAL 
FROM sample GROUP BY month 
; 

输出

month WEEK_1_VAL WEEK_2_VAL WEEK_3_VAL WEEK_4_VAL WEEK_5_VAL 
12  8   13   1   119.78  11.89 
+0

每周8天? –

+0

不,一周7天 –

+0

每周更换7天。 @DheerajPatnaik做这个答案。 – minatverma

0

做一个查询,你按DATEPART(week, ...),这将产生每周一列,然后转动该查询,使行成列。