求教高手一sql语句!!!!得到答案马上接贴!

ljqdu1982 2006-02-27 04:56:02
数据表中有这样的数据:
year coures name
2005 2 str1
2005 2 str2
2005 2 str3
2005 1 zhong
2005 1 guo
想要通过查询这样表示出来:
year coures name
2005 2 str1,str2,str3
2005 1 zhong,guo
查询语句该怎么写?求教高人!!!
...全文
80 点赞 收藏 3
写回复
3 条回复
切换为时间正序
当前发帖距今超过3年,不再开放新的回复
发表回复
msjqd 2006-02-27
不是已经解决了吗
回复
wgsasd311 2006-02-27
create function f_str(@year int,@coures int)
returns varchar(8000)
as
begin
declare @s varchar(8000)
set @s=''
select @s=@s+','+[name] from tb where [year]=@year and coures=@coures
return stuff(@s,1,1,'')
end
go
select [year],coures,[name]=max(dbo.f_str(year,coures)) from tb
group by [year],coures
回复
lsqkeke 2006-02-27
--表名 t

create function f_union(@year int,@coures int)
returns varchar(100)
as
begin
declare @sql varchar(100)
set @sql=''
select @sql=@sql+','+[name] from t where [year]=@year and coures=@coures
return(stuff(@sql,1,1,''))
end
go

select [year],coures,[name]=dbo.f_union([year],coures) from t group by [year],coures
回复
相关推荐
发帖
疑难问题
创建于2007-09-28

2.1w+

社区成员

MS-SQL Server 疑难问题
申请成为版主
帖子事件
创建了帖子
2006-02-27 04:56
社区公告
暂无公告