create table infor(age int,telnum varchar(10))insert into infor values (23,'887907')insert into infor values (23,'807005')insert into infor values (20,'123456')insert into infor values (21,'21343')insert into infor values (21,'674542')gocreate function getall(@a int)returns varchar(8000)asbegindeclare @str varchar(8000)set @str = ''select @str = @str + ',' + cast(telnum as varchar) from infor where age = @aset @str = right(@str , len(@str) - 1)return(@str)Endgoselect distinct age ,dbo.getall(age) as telnum from infor----结果20 12345621 21343,67454223 887907,807005