2014-03-26 75 views
0

可以在表连接中加入表吗?如果是这样,我该怎么做?SQL JOIN在LEFT JOIN中加入

我有做标准连接(LEFT JOIN)的经验,并且已经计算出如何连接多个表,但不知道如何连接表连接中的表。这里是我的数据结构,以更好地解释:

T1 (
    T1_T2 
) 

T1_T2 (
    T1_T2_id 
    T1_T2_T3 
) 

T1_T2_T3 (
    T1_T2_T3_id 
    T1_T2_T3_a 
    T1_T2_T3_b 
) 

目前我的SQL是这样的:

SELECT * FROM T1 
    LEFT JOIN T1_T2 
     ON T1.T1_T2 = T1_T2.T1_T2_id 

这将返回我从T1和T1_T2想要的数据。我想在加盟T1_T2到T1_T2_T3像这样:

SELECT * FROM T1_T2 
    LEFT JOIN T1_T2_T3 
     ON T1_T2.T1_T2_T3 = T1_T2_T3.T1_T2_T3_id 

我可以在一个查询中这样做吗?

+0

添加另一个(第二)'JOIN'与第三个表 –

+0

应该有,如果你添加与第三台 – vicsana1

+0

另一个JOIN你的意思是没有问题我可以这样做: SELECT * FROM T1 LEFT JOIN T1_T2 ON T1.T1_T2 = T1_T2.T1_T2_id LEFT JOIN T1_T2_T3 ON T1_T2.T1_T2_T3 = T1_T2_T3.T1_T2_T3_id –

回答

1

我猜你正在寻找的东西是这样的:

SELECT * FROM T1 
    LEFT JOIN T1_T2 
    ON T1.T1_T2 = T1_T2.T1_T2_id 
    LEFT JOIN T1_T2_T3 
    ON T1_T2.T1_T2_T3 = T1_T2_T3.T1_T2_T3_id 
+0

这就是伟大的工作!没有意识到它会那么简单!谢谢,我会在时间限制结束后接受你的回答。 –

+0

是!这很简单。你在评论中写的查询是一样的(但我看到它后张贴答案),但upvoted - 谢谢你.. :) –

+0

@MikeOram,你检查答案,我认为它不工作 – jmail