其中f0num为t1中flag值为0的记录数,f1num为t1中flag值为1的记录数。
是统计ID一样的,还是统计表中所有的
建议贴出你的表结构,数据以及要求的结果

解决方案 »

  1.   


    t1表数据:
    +------+------+------+------+
    | id   | name | dept | flag |
    +------+------+------+------+
    |    1 | w    | w    |    0 |
    |    1 | w    | w    |    1 |
    |    2 | w    | w    |    1 |
    |    2 | w    | w    |    0 |
    |    2 | a    | a    |    0 |
    |    2 | a    | a    |    1 |
    |    2 | a    | a    |    1 |
    |    2 | w    | w    |    1 |
    +------+------+------+------+希望的结果,id,name,dept 三个字段group by后 得到对应的flag为0的个数 f0num和 flag为1的个数 f1num。
      

  2.   

    select id,name,dept,sum(case when flag=0 then 1 else 0 end) f0num,
    sum(case when flag=1 then 1 else 0 end) f1num from t1 group by id,name,dept