有表如下
name  star  Jan Feb march
A      1-X    1   -1  0
B      1-X    1    1  1
C      2-X    -1   0  0统计按star分每列等于-1的数量
 star  Jan Feb march
 1-X    0   1  0
 2-X    1   0  0哪位大哥指点一下,多谢 

解决方案 »

  1.   

    SELECT DISTINCT star,
              (SELECT COUNT(*)
             FROM Table1 A
             WHERE A.Star = MainTable.star AND Jan = - 1) AS Jan,
              (SELECT COUNT(*)
             FROM Table1 B
             WHERE B.Star = MainTable.star AND Feb = - 1) AS Feb,
              (SELECT COUNT(*)
             FROM Table1 C
             WHERE C.Star = MainTable.star AND March = - 1) AS March
    FROM TABLE1 MainTable
      

  2.   

    select start,
     sum(case when Jan=-1 then 1 else 0 end ) as Jan,
     sum(case when Feb=-1 then 1 else 0 end ) as Feb,
     sum(case when march=-1 then 1 else 0 end ) as March
    from T
    group by start