一对多 联合查询/如何记录合并?

peaty 2002-10-09 12:50:49
a b 两表 一对多的关系

我想联合查询,用一句sql得到如下的结果,不知道行不行
a1 (b11,b12,b12) as b1
a2 (b21,b22,b22) as b2
a3 (b31,b32,b32) as b3
a4 (b41,b42,b42) as b4
...全文
109 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
peaty 2002-10-09
  • 打赏
  • 举报
回复
b11,b12,b12 是记录,不是字段,他们是同一字段的不同记录值
Yang_ 2002-10-09
  • 打赏
  • 举报
回复
实例来了,刚才dns错误,连不上!

create table a(
id char(10),
avalue varchar(10)
)
go

create table a(
id int,
aid char(10),
name varchar(10),
value varchar(40)
)
go

create function getstr(@id char(10))
returns Nvarchar(2000)
as
begin
declare @str Nvarchar(2000)
set @str=N''
select @str=@str+N','+rtrim(Name) from b
where aid=@id
order by id

set @str=right(@str,len(@str)-1)
return @str
end


GO

调用:
select a.id,dbo.getstr(a.id) as name
from a
vvyjp 2002-10-09
  • 打赏
  • 举报
回复
把脚本贴出来吧!
sky_blue 2002-10-09
  • 打赏
  • 举报
回复
还是做个例子出来吧,太抽象了,看不明白
Yang_ 2002-10-09
  • 打赏
  • 举报
回复
用自定义函数合并,以前回复过,找不到了!

34,593

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server相关内容讨论专区
社区管理员
  • 基础类社区
  • 二月十六
  • 卖水果的net
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧