sql中周汇总列显示应该怎么做呢 ?
数据时行数据
2011-01-01 铜 30吨
2011-01-02 铁 40吨
2011-01-02 铜 10吨
2011-01-03 铁 20吨
2011-01-03 铜 30吨
2011-01-04 铁 40吨
怎么按周来汇总呢 ?
查询条件 2010-01-01至 2010-01-31
物料名称 ,01.01-01.07 , 01.08-01.09 ,...... , 合计
铜 100 0 100
铁 100 0
作者: ggt87125 发布时间: 2011-06-16
SQL code
;with cte as( select dateadd(d,number,'2011-01-01') dt,datepart(wk,dateadd(d,number,'2011-01-01'))wk from master..spt_values where type='p' and dateadd(d,number,'2011-01-01')<'2011-01-31' )select a.物料名称,b.wk as 周次,sum(a.重量) from yourtb a inner join cte b on a.dt=b.dt group by a.物料名称,b.wk --再进行行转列.
作者: qianjin036a 发布时间: 2011-06-16
SQL code
select 物料名称,min(date)+'-'+max(date),sum(重量) from tb group by 物料名称,(day(date)-1)/7 --再行专列
作者: zy112429 发布时间: 2011-06-16