2016-04-07 4 views
0

Ich habe zwei Tabellen Teams und Spiele unten definiert:Rückgabe einer Spalte "Name" anstelle einer ID in mysql

Teams 
teamID Name rank 
----------------- 
1  UNC 8 
2  Duke 9 
3  Cal 5 
4  UNLV 12 

Games 
gameID team1ID team2ID score1 score2 
------------------------------------ 
1   1  2  88  87 
2   3  4  86  85 

Ich würde eine Abfrage wie die zurückgibt:

gameID team1name team2name score1 score2 
------------------------------------------------ 
    1   UNC  Duke  88  87 
    2   Cal  UNLV  86  85 

Ich bin zu dem Punkt gekommen, wo ich die Ergebnisse aus der unten stehenden Aussage verwenden könnte, aber ich weiß, dass es eine richtige Weg geben muss.

SELECT * FROM games INNER JOIN 
    teams ON teams.teamID = games.team1ID 
    OR teams.teamID = games.team2ID 

Vielen Dank für jede Hilfe im Voraus.

Antwort

0

Join the teams Tabelle zweimal mit verschiedenen Alias-Namen

SELECT g.gameID, 
     t1.name as team1, 
     t2.name as team2, 
     g.score1, g.score2 
FROM games g 
INNER JOIN teams t1 ON t1.teamID = g.team1ID 
INNER JOIN teams t2 ON t2.teamID = g.team2ID 
+0

Dank dieser war perfekt! –

Verwandte Themen