SQL三表联合查询(有NULL记录)

SQL三表联合查询问题:3个表:T1、T2、T3,逐级一对多,但T3中有记录与T2无关联,直接与T1关联,如图所示。用直接内联(INNERJOIN)不行,有NULL项丢失... SQL三表联合查询问题: 3个表:T1、T2、T3,逐级一对多,但T3中有记录与T2无关联,直接与T1关联,如图所示。
用直接内联(INNER JOIN)不行,有NULL项丢失。肯请高手指教。
谢谢各位的热情。经测试,不能输出所要的结果。
注意:T2的第2条记录在T3中没有相关记录,
   T3的第2条记录与T2没有关联,直接与T1的第1条记录关联。
3位的查询语句均不能得到输出结果要求。
展开
 我来答
micro0369
推荐于2017-10-06 · TA获得超过1.2万个赞
知道大有可为答主
回答量:9250
采纳率:85%
帮助的人:4024万
展开全部
外连接既可
select a.*,b.*,c.*
from a left outer join b on a.id=b.id
left outer c on a.id =c.id

你好歹把连接条件改改啊:
select t1.id,t1.name,t2.ca,t3.hi
from t1 left outer join t2 on t1.id=t2.t1_id
left outer t3 on t1.id =t3.t1_id and t2.id = t3.t2_id
本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
doreen_33
2012-05-14 · TA获得超过957个赞
知道小有建树答主
回答量:392
采纳率:100%
帮助的人:146万
展开全部
在查询条件後面加一个条件
and t2_id<>null
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
传说中的鹰王
2012-05-14 · TA获得超过1053个赞
知道小有建树答主
回答量:923
采纳率:87%
帮助的人:547万
展开全部
select t1.id,t1.name,t2.ca,t3.hi
from t3 left outer join
t2 on t3.t2_id=t2.id left outer join
t1 on t1.id=t2.t1_id and t1.id=t3.t1_id
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式