求一条SQL查询语句

LiangWu25 2009-04-02 02:26:58
有三个表。
A表有:MemberID,MemberName 两个字段,每个MemberID对应一个MemberName
B表有:BID(B表主键),MemberID ,Desc
C表有:CID(C表主键),BID ,MemberID ,Desc

B表和C表是主从关系,B表一条记录对应C表多条记录。
比如三表内容如下:
A: MemberID MemberName
1 Tom
2 Jack

B: BID MemberID Desc
1 1 'aa'

C: CID BID MemberID Desc
1 1 1 'bb'
2 1 2 'cc'

问题:找出B表和其从表C表中的BID=1的记录,同时B表和C表中要把MemberID翻译成MemberName
...全文
59 9 打赏 收藏 转发到动态 举报
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
LiangWu25 2009-04-02
  • 打赏
  • 举报
回复
谢谢libin_ftsafe! nj_1st_excellence的SQL 没有翻译出来B表的MemberName,也谢谢了
wrbjy1967 2009-04-02
  • 打赏
  • 举报
回复
同意楼上的
LiangWu25 2009-04-02
  • 打赏
  • 举报
回复
晕,回复好快!我指的是二楼,刚才准备libin_ftsafe 的SQL打到SQL SERVER中,结果却粘在回复中了,呵呵
LiangWu25 2009-04-02
  • 打赏
  • 举报
回复
select
B.BID,a1.MemberName,B.Desc,C.CID,a2.MemberName,C.Desc
from
A a1,A a2,B,C
where
a1.MemberID=B.MemberID and a2.MemberID=C.MemberID and B.BID=C.BID and B.BID=1
LiangWu25 2009-04-02
  • 打赏
  • 举报
回复
谢谢楼上兄弟,但是这条语句没有翻译出B表的MemberName
jiujiang88 2009-04-02
  • 打赏
  • 举报
回复
select B.BID,A.MemberName,B.Desc from B left join A on B.MemberID=A.MemberID where B.BID='1'
union all
select C.CID,C.BID,A.MemberName,C.Desc from C left join A on C.MemberID=A.Memberid WHERE C.BID='1'
dpzc_love 2009-04-02
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 nj_1st_excellence 的回复:]
SQL codeselect b.*,c.*,a.MemberName from b inner join c on b.bid=c.bid left join a on c.MemberID = a.MemberID
[/Quote]

支持!
子陌红尘 2009-04-02
  • 打赏
  • 举报
回复

select
B.BID,a1.MemberName,B.Desc,C.CID,a2.MemberName,C.Desc
from
A a1,A a2,B,C
where
a1.MemberID=B.MemberID and a2.MemberID=C.MemberID and B.BID=C.BID and B.BID=1
nj_1st_excellence 2009-04-02
  • 打赏
  • 举报
回复
select b.*,c.*,a.MemberName from b inner join c on b.bid=c.bid left join a on c.MemberID = a.MemberID

22,210

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server 疑难问题
社区管理员
  • 疑难问题社区
  • 尘觉
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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