我的sql数据库如下所示:
表匹配:
id | homeTeamId | guestTeamId
------ | ---------- | ----------
1 | 1 | 2
------ | ---------- | ----------
2 | 13 | 9
表格团队:
id | Name
------ | ------
1 | Arsenal London
------ | ------
2 | Manchester City
------ | ------
9 | Tottenham
------ | ------
13 | Aston Villa
现在我想创建一个查询,它返回与我的团队名称的所有匹配项。 我的输出应该如下所示:
id | homeTeamId | guestTeamId | hometeam | guestteam
------ | ---------- | ----------- | ---------------| ---------
1 | 1 | 2 | Arsenal London | Manchester City
------ | ---------- | ----------- | ---------------| ---------
2 | 13 | 9 | Aston Villa | Tottenham
那么,我该怎么做呢?我尝试了很多内连接,左连接,分组,....但问题是,我需要在一个表上有两个连接并为同一列提供别名。
感谢您的帮助!
答案 0 :(得分:4)
有几种方法可以做到这一点。这是一个使用多个joins
:
select m.id, m.hometeamid, m.guestteamid, t1.name hometeam, t2.name guestteam
from match m
join team t1 on m.hometeamid = t1.id
join team t2 on m.guestteamid = t2.id