有如下一张表:
   user   type
   张三     A
   张三     B
   张三     C
   李四     B
   王五     B
   赵六     C一个人可能对应多种type
现在要用一SQL语句统计type各有几人,即要统计的结果如下:
    typeA   typeB   typeC
     1       3       2请问语句要如何写呢?
非常感谢!

解决方案 »

  1.   

    对固定的type内容,可以用:
    select sum(case when type='A' then 1 else 0 end) typeA,
           sum(case when type='B' then 1 else 0 end) typeB,
           sum(case when type='C' then 1 else 0 end) typeC
      from 表名
      

  2.   

       select count(*),type from  表名 group by type 
      

  3.   

    select type , count(*) 人 from tb group by type--select 
      (select count(*) from tb where type = 'A') typeA,
      (select count(*) from tb where type = 'B') typeB,
      (select count(*) from tb where type = 'C') typeC
      

  4.   

    对不固定的type内容,横排怎么做我只会SQL SERVER的,ORACLE学习中....
      

  5.   

    二楼
    type内容故不固定无所谓
      

  6.   

     select count(*),type from  表名 group by type