将一个MYSQL表中的单个记录连接到一秒钟内的两个记录
我有两张MYSQL表、两支球队和两个固定装置。他们看起来像这样将一个MYSQL表中的单个记录连接到一秒钟内的两个记录,mysql,Mysql,我有两张MYSQL表、两支球队和两个固定装置。他们看起来像这样 TEAMS team_id | team --------------------------------- 1 | Manchester United 2 | Liverpool 3 | Chelsea FIXTURES fixture_id | date | home_team_id | away_team_i
TEAMS
team_id | team
---------------------------------
1 | Manchester United
2 | Liverpool
3 | Chelsea
FIXTURES
fixture_id | date | home_team_id | away_team_id
--------------------------------------------------------------
1 | 2014-01-06 | 1 | 2
2 | 2014-02-06 | 2 | 3
3 | 2014-03-06 | 3 | 1
我想做的是编写一个查询,生成一个类似于
fixture_id | date | home_team | away_team
--------------------------------------------------------------------------
1 | 2014-01-06 | Manchester United | Liverpool
2 | 2014-02-06 | Liverpool | Chelsea
3 | 2014-03-06 | Chelsea | Manchester United
如何将一个赛程表中的主队id和客队id加入到团队表中的两个团队id记录中
谢谢你的帮助
朱尔斯你需要加入两个团队
select
f.fixture_id,
f.date,
t1.team as home_team,
t2.team as away_team
from FIXTURES f
join TEAMS t1 on t1.team_id = f.home_team_id
join TEAMS t2 on t2.team_id = f.away_team_id
您只需加入到TEAMS表两次,如下所示:
select fixture_id, date, h.team as home_team, a.team as away_team
from fixtures f
inner join teams h on f.home_team_id = h.team_id
inner join teams a on f.away_team_id = a.team_id
这应该能解决你的问题。将团队表连接到FIXTURES表的时间
select fixture_id,date,hometeam.team,awayteam.team from FIXTURES join TEAMS hometeam on home_team_id = hometeam.id join TEAMS awayteam on home_team_id = awayteam.id
很好用,谢谢。我尝试过类似的方法,但在返回结果的两个join语句之间添加了AND。感谢大家提供的各种解决方案。
和
是对条件执行布尔运算。对于联接,只需附加下一个联接语句。