得到:
ID     产品ID    时间    v1    v2    v3   v4   sums
1      1001      17:10    0     0    0     0     0
2      1002      17:20    1     0    1     0     2
3      1003      17:30    0     1    0     0     1
4      1004      17:40    0     0    1     0     1
5      1005      17:50    0     1    0     0     0
sums     5                1     2    2     0     AAAA=3,如果AA是sums!=0的和,怎么做??

解决方案 »

  1.   

    最后一项是求  sums不等0的项的个数
      

  2.   

    create table T(ID int, 产品ID char(4), 时间 char(5), v1 int, v2 int, v3 int, v4 int, sums int)
    insert T select 1,      '1001',      '17:10',    0,     0,    0,     0,     0
    union all select 2,      '1002',      '17:20',    1,     0,    1,     0,     2
    union all select 3,      '1003',      '17:30',    0,     1,    0,     0,     1
    union all select 4,      '1004',      '17:40',    0,     0,    1,     0,     1
    union all select 5,      '1005',      '17:50',    0,     1,    0,     0,     1select ID=rtrim(ID), 产品ID,'' 时间, rtrim(v1), rtrim(v2), rtrim(v3), rtrim(v4), rtrim(sums) sums from T
    union all 
    select 'sums', count(*), '', rtrim(sum(v1)), rtrim(sum(v2)), rtrim(sum(v3)), rtrim(sum(v4)), 'AA' sums from T
      

  3.   

    select id=sums,产品ID=count(产品ID), 时间='',v1=sum(v1),v2 =sum(v2),v3=sum(v3),v4 =sum(v4),  sums=sum(sums) from tablename 
      

  4.   

    select id=sums,产品ID=count(产品ID), 时间='',v1=sum(v1),v2 =sum(v2),v3=sum(v3),v4 =sum(v4),  sums=sum(case when sums<>0 then 1 else 0 end) from tablename
      

  5.   

    sum(case sums when 0 then 0 else 1 end) as AA
      

  6.   

    select ID=rtrim(ID), 产品ID,时间, rtrim(v1), rtrim(v2), rtrim(v3), rtrim(v4), rtrim(sums) sums from #t
    union all 
    select 'sums', count(*), '', rtrim(sum(v1)), rtrim(sum(v2)), rtrim(sum(v3)), rtrim(sum(v4)), sum(sums) sums from #t