簡體   English   中英

SQL連接-一列用作另一表中兩列的ID

[英]SQL join - one column serving as ID for two columns in another table

好的,也許我已經完全沉迷於此背后的思考過程,而我需要放在我的位置,或者也許我就在不遠處。

我有一個名為TEAMS的表,其中有兩列:teamID和teamName。 然后,我還有另一個名為WEEK12的表,該表具有三列:gameID,homeID和awayID。

我以為也許可以在WEEK12表的homeID和awayID列中使用teamID,然后將其與TEAMS表結合起來,以使這兩列與團隊名稱匹配。 不幸的是,我沒有任何運氣。 我可以加入並獲得與homeID或awayID匹配的團隊名稱,但是我不能兩者都做。

任何幫助是極大的贊賞!

SELECT w.gameID,
       h.teamName AS 'Home Team',
       a.teamName AS 'Away Team' 
FROM WEEK12 AS w 
     LEFT JOIN TEAMS AS h 
               ON w.homeID=h.teamID 
     LEFT JOIN TEAMS AS a 
               ON w.awayID=a.teamID

您應該能夠在同一查詢中兩次連接到同一表。 性能受到影響(兩次查詢),但是應該可以。

SELECT home.teamName as homeTeam, away.teamName as awayTeam, week.gameID
FROM week12 week
INNER JOIN teams home ON week.homeID = home.teamID
INNER JOIN teams away ON week.awayID = away.teamID

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM