统计特定列内容相同的数量
可能标题写的不是很明白,我举个例子
表A 有以下内容:
name            type       others
tony              a          12
tony              a          23
tony              b          34
tony              c          45
alex              a          65
alex              b          45tony对应的type里有3种不同的内容a,b,c
alex里有2种:a,b我希望得到的结果是
name        typeNum
tony           3
alex           2不知道怎么写SQL语句

解决方案 »

  1.   

    select name .count(*) typenum
    from a
    group by name这是基础语法啊
      

  2.   

    select name .count(distinct type) typenum 
    from a 
    group by name 
      

  3.   

    不对的,这样返回的只有tony这一行,alex的没有,distinct好像作用的全局我记得。这个我试过了
      

  4.   

    对不起啊,hebo2005是对的,因为提供的那张表我也是通过查询得到的,简化了下才拿出来给大家看的,得到的结果跟直接用不一样。