2012-06-23 69 views
0

我有麻煩了解如何從MySQL中獲取數據。答案可能是簡單,但我卡住了,無法找到互聯網上的任何幫助......MySQL數據獲取

我有三個表,比方說第一臺被命名爲系列,二是團隊和第三ID的遊戲。 表結構是這樣的:

series: 
id 
name 

teams: 
id 
name 

games: 
series_id (relates to series.id) 
hometeam_id (relates to teams.id) 
visitorteam_id (relates to teams.id) 

所以我的問題是,從獲取遊戲,在這些ID的需要在那裏的名字,沒有ID的行...

Result should be something like this: 
"championship 
wolverines 
marines" 

not like 
"1 
45 
142" 

目前我取這些系列和團隊表,hashref(在Perl)和採取的ID從那裏。但一定要做到,在一個SQL查詢,而不是三個更有效的方式。

+0

@sgmart一般運動有2隊對陣對方:P – Russ

回答

1

你需要加入球隊表兩次(一次主隊,爲遊客第二次)

SELECT g.*,h.name as hometeam_name,v.name as visitorteam_name FROM games g 
    INNER JOIN series s ON g.series_id=s.id 
    INNER JOIN teams h ON g.hometeam_id=h.id 
    INNER JOIN teams v ON g.visitorteam_id=v.id 
+0

打我一記重拳,是不過要去寫一個像這樣的SQL語句(+1)。也爲OP可能我建議在看http://www.w3schools.com/sql/default.asp – Russ