2014-10-27 41 views
2

我有兩個表SQL:如何從另一個表中的表中選擇不同的值?

表 '隊' 有兩列

teamID, 
teamName 

表 '匹配' 有三列

matchID, 
teamID_1, 
teamID_2 

...像圖像波紋管:

怎麼會我構建了一條select語句,它將根據它們各自的ID將Teams.teamName拉到Match.teamID_1Match.teamID_2

我能做到這一點只有一列或另一個,但不能同時:

SELECT Match.matchID, Teams.teamName 
    FROM Match 
    INNER JOIN Teams ON Match.teamID_1 = Teams.teamID 

OR

SELECT Match.matchID, Teams.teamName 
    FROM Match 
    INNER JOIN Teams ON Match.teamID_2 = Teams.teamID 

回答

4

您可以多次參加同一表。只是別名(t1t2如下所示):

SELECT 
    Match.matchID, 
    t1.teamName, 
    t2.teamName 
FROM Match 
    INNER JOIN Teams t1 ON Match.teamID_1 = t1.teamID 
    INNER JOIN Teams t2 ON Match.teamID_2 = t2.teamID 
相關問題