我有两个表,“团队”和“匹配”。我想从匹配表中选择并替换两个团队ID与实际团队名称。我只能获得一个团队名称,我不确定如何选择两个。
SELECT m.*, t.teamId, t.teamName FROM matches AS m
JOIN teams AS t ON m.homeTeam = t.teamId
匹配表
ID*
Date
homeTeam (id)
awayTeam (id)
团队表
ID*
Name
答案 0 :(得分:2)
您需要两次加入teams
表格。一次为matches
表中的每个团队条目。它应该看起来像这样
SELECT
m.id
, m.date
, h.teamId as homeTeamID
, h.teamName as homeTeamName
, a.teamId as awayTeamID
, a.teamName as awayTeamName
FROM
matches AS m
JOIN teams AS h -- home team
ON m.homeTeam = h.teamId
JOIN teams AS a -- away team
on m.awayTeam = a.teamId
我不得不猜测你把这些字段命名为什么,但这应该足以让你开始。