I\'m trying to learn how to join multiple columns from one table to a single column from another table.
This is my table structure in its simplest form:
SELECT t1.team_name AS team1, t2.team_name AS t2, tr.team_1, tr.team_2
FROM trades tr
INNER JOIN teams t1 ON t1.id = tr.team_1
INNER JOIN teams t2 ON t2.id = tr.team_2
You need to join twice:
SELECT t1.team_name as team1, t2.team_name as team2, trades.team_t, trades.team_2
FROM teams t1, teams t2, trades
WHERE t1.id = trades.team_1 and t2.id = trades.team_2
Try joining the teams table again but using two different aliases:
SELECT
teams1.team_name AS team1,
teams2.team_name AS team2,
trades.team_1,
trades.team_2
FROM trades
JOIN teams AS teams1 ON trades.team_1 = teams1.id
JOIN teams AS teams2 ON trades.team_2 = teams2.id
Like this:
select t1.team_name as team1, t2.team_name as team2, t.team_1, t.team_2
from trades t
inner join teams t1 on t1.id = t.team_1
inner join teams t2 on t2.id = t.team_2;