求SQL文,希望高手指教!

来源:百度知道 编辑:UC知道 时间:2024/06/16 22:01:05
表A:字段有ID,name
里面有数据001,name1
002,name2
表B:字段有LevelID,ID
里面有数据 L1 001
L2 001
表C:字段有LevelID,LevelName
里面有数据 L1 L1Name
L2 L2Name

现在求SQL!希望得到的数据是用SQL文得出A表的name和C表的LevelName~~~就是取出数据:name1,L1Name;L2Name

也就是一个id可以对应多个LevelID,所以我需要取出一条数据,取出A表的name,和这个name的id所对应的所有的LevelName,用分号隔开!

求高手解答!~~

楼上说的对 一条Sql是实现不了的
写个函数吧

create function getStr(@name varchar(50))
returns varchar(200)
as
begin
declare @str varchar(200)
select @str=isnull(@str+';','')+LevelName from A a,B b,C c
where a.ID=b.ID and b.LevelID=c.LevelID
and a.name=@name
return @str
end

select LevelNames=dbo.getStr(name) from A

一条Sql是实现不了的
参考:
http://hi.baidu.com/quhongjiang/blog/item/1c8ffcfae8a222dab58f31f5.html