比如要在一个员工表里面统计分别以26个字母开头的姓名的员工信息,想让员工以每个字母开头分组再处理,能不能实现?如果能实现怎么实现?刚开始学T-SQL不久..

解决方案 »

  1.   

    http://blog.csdn.net/maco_wang/article/details/6260301
    SQL函数--得到汉字拼音缩写
    http://blog.csdn.net/maco_wang/article/details/6290128
    SQL函数--得到汉字全拼
      

  2.   

    create table a
    (
    name varchar(10),
    sex varchar(10),
    address varchar(10)
    )
    insert into a values('Am','男','白宫')
    insert into a values('Bm','男','白宫')
    insert into a values('Cm','男','白宫')select a.* from a where name like 'A%' 
    这样吗?
      

  3.   

    比如
    一个员工表,有列 [姓名],[性别],[工资]
    姓名就当成只有英文的名字好了然后我现在想按照 'a%','b%','c%','d%'......'z%' 分组
    也就是'acb','ade','ade'...等分成1组
    'bcb','bde','bde'...等分成第2组
    ...
    'zcb','zde','zde'...等分成第26组
    然后按分组查看平均工资,人数等等..
      

  4.   

    如果只有英文,那就直接:
    select left(姓名,1) as 首字母,count(*) as 人数,avg(工资)as 平均工资
    from tb
    group by left(姓名,1)
    order by 1
      

  5.   

    left截取一个长度对中文有没有影响?
    如果我上面的例子变成中文和英文混合的数据会不会实现不了?