高难度的一表对多表,关系,恳请高手解答

kinthtime 2005-08-05 11:40:19
近期碰到一个棘手问题,想了一个多星期了都没想出来,请教各位高手:

a表:
id a1
1 test1
b表:
id b1
1 str1,
1 str2,
1 str3,

结果如下:

id a1 a2 id b1
1 test1 test1 1 str1,
1 test1 test1 1 str2,
1 test1 test1 1 str3,

我想要如下结果该怎么写啊:

id a1 a2 id b1
1 test1 test1 1 str1,str2,str3
...全文
50 点赞 收藏 4
写回复
4 条回复
切换为时间正序
当前发帖距今超过3年,不再开放新的回复
发表回复
vivianfdlpw 2005-08-05
create function f_str(@ID int)
returns varchar(100)
as
begin
declare @str varchar(100)
set @str=''
select @str=@str+','+b1 from b where id=@ID
return stuff(@str,1,1,'')
end
go


select a.id,a.a1,[a2]=a.a1,
t.id,t.b1
from a
join (select id,[b1]=dbo.f_str(id) from b group by id)t
on a.id=t.id
回复
子陌红尘 2005-08-05
create function f_str(@id int)
returns varchar(8000)
as
begin
declare @ret varchar(8000)
set @ret = ''
select @ret = @ret + b1 from b where id = @id
set @ret = stuff(@ret,1,1,'')
return @ret
end

select
a.id,a.a1,a.a2,b.id,b1=dbo.f_str(a.id)
from
a,b
group by
a.id,a.a1,a.a2.b.id
回复
kinthtime 2005-08-05
终于成功了,libin_ftsafe(子陌红尘),也感谢vivianfdlpw()
回复
Toti 2005-08-05
收藏一下!1
回复
相关推荐
发帖
应用实例
创建于2007-09-28

2.7w+

社区成员

MS-SQL Server 应用实例
申请成为版主
帖子事件
创建了帖子
2005-08-05 11:40
社区公告
暂无公告