2011-02-01 86 views
0

我有3个表,我试图将其与查询合并为一个表。一个表“Main”具有主键“AppID”,另外两个表“Net & Env”使用该键作为外键。我想要做的就是在主要和网络AppID上进行连接,对于网络中存在的每个appid以及存在于Env中的每个Appid。我的想法是,如果我在Main和Net上进行连接,则唯一剩下的就是AppIds同步,但我也想从Main到Env进行连接。我的查询是:SQL查询连接问题

SELECT Main.Name FROM ((Main INNER JOIN Net On Main.AppID=Net.AppID)INNER JOIN 
Env On Env.AppID=Main.AppID); 

我是否需要为外连接有一个子查询。我知道abover查询并没有给我我想要的结果。如果我的问题不清楚,请告诉我。

回答

2

使用LEFT JOIN

SELECT m.Name FROM Main m LEFT JOIN Net n ON n.AppID=m.AppID LEFT JOIN Env e ON e.AppID=m.AppID; 
+0

林这样的idiot..that有意义 – Jake 2011-02-01 20:59:37