请sal高手帮忙

来源:百度知道 编辑:UC知道 时间:2024/06/13 15:16:51
我有一个表a 。其中字段name人名相同的记录很多,想把每个相同的人名有多少条记录输出来,请问如何编。
谢谢

select name,count(*) as 个数 from a group by name

create table #(name varchar(100),b int)
insert # values('aa',11)
insert # values('bb',1)
insert # values('aa',45)
insert # values('cc',81)
insert # values('a',11)
insert # values('aay',561)
insert # values('a',14)

declare @sql varchar(8000)
set @sql = 'select '
select @sql = @sql + 'sum(case name when '''+name+'''
then 1 else 0 end) '+name+'的数量,'
from (select distinct name from #) as a
select @sql = left(@sql,len(@sql)-1) + ' from #'
exec(@sql)

drop table #

wwjwang的是正解,关键是group by使如sum() count()等聚合函数只能作用于分组上