日期:2014-05-18  浏览次数:20456 次

请问一下SQL语句怎么写,好象不太容易
有这样一个表:
(ID   数字型),(name   字符型)   ,(class   字符型   分类字段)
1   张三   武汉
2   李四   武汉
3   刘八   武汉
5   周九   成都
6   蔡十   成都
7   何大   北京
8   刘小   北京

语句运行后的结果应是:
武汉   张三、李四、刘八
成都   刘八、周九
北京   何大、刘小

这样的语句应该怎么写呢


------解决方案--------------------
---创建函数
Create Function Fn_Merge(@class Varchar(20))
Returns Varchar(1000)
As
Begin
Declare @sql Varchar(1000)
Set @sql= ' '
Select @sql=@sql+ '、 '+[name] From 表 Where class=@class
Return Stuff(@sql,1,1, ' ')
End
Go

---调用自定义函数
Select class,dbo.Fn_Merge(class) As name From 表 Group By class