日期:2014-05-19  浏览次数:20574 次

求一个字符连接的sql语句
我有记录如下:
flag       name     price
1             aa         5
2             bb         7
1             cc         8
2             dd         9

我想得到的结果是
1       aa,cc         13
2       bb,dd         16
也就是根据flag列把name合并,把price相加
谢谢。。

------解决方案--------------------
create function dbo.uf_getstrs(@flag int)
returns varchar(1000)
as
begin
declare @s varchar(1000)
set @s = ' '
select @s = @s+name+ ', ' from 表 where flag=@flag
set @s=left(@s,len(@s)-1)
return @s
end
go
select flag,dbo.uf_getstrs(flag) as name,sum(price) as price
from 表
group by flag