当前位置: 代码迷 >> Sql Server >> 求如下的結果,SQL應該怎麼寫?解决方法
  详细解决方案

求如下的結果,SQL應該怎麼寫?解决方法

热度:97   发布时间:2016-04-27 17:45:31.0
求如下的結果,SQL應該怎麼寫?
我目前有這樣的一個表,表的欄位名稱有
ColorNo       XXS       XS     S       M     L     XL     XXL   箱數       總碼數之和
  001                             10     5       10                               2                 25
  001                             5                                                 1                 5
  021               25                                                             4                 25                          
  021               5                                                               1                 5


我現在要做一個合計是下面這樣的
ColorNo       XXS     XS     S     M     L     XL     XXL
001                           25     10     20    
021               105          
       


------解决方案--------------------
create table t(ColorNo varchar(10),XXS int,XS int,S int,M int,L int,XL int,XXL int,
箱數 int,總碼數之和 int)
insert t select '001 ', ' ',10,5,10, ' ', ' ', ' ',2,25
union all select '001 ', ' ',5, ' ', ' ', ' ', ' ', ' ',1,5
union all select '021 ',25, ' ', ' ', ' ', ' ', ' ', ' ',4,25
union all select '021 ',5, ' ', ' ', ' ', ' ', ' ', ' ',1,5

select ColorNo,XXS=sum(箱數*XXS),XS=sum(箱數*XS),S=sum(箱數*S),M=sum(箱數*M),L=sum(箱數*L),
XL=sum(箱數*XL),XXL=sum(箱數*XXL) from t group by ColorNo


ColorNo XXS XS S M L XL XXL
---------- ----------- ----------- ----------- ----------- ----------- ----------- -----------
001 0 25 10 20 0 0 0
021 105 0 0 0 0 0 0

(所影响的行数为 2 行)
  相关解决方案