MySQL-EER表中的双主键 上下文
我一直在摆弄一个小的足球爱好数据库来记录比赛、球员和进球。遇到了一个我不知道如何解决的问题 match表有两个外键,都指向team表中的tID。 我的想法是,我以后可以做一个选择,看看在给定的比赛中,哪些球队(按名称)相互对抗MySQL-EER表中的双主键 上下文,mysql,Mysql,我一直在摆弄一个小的足球爱好数据库来记录比赛、球员和进球。遇到了一个我不知道如何解决的问题 match表有两个外键,都指向team表中的tID。 我的想法是,我以后可以做一个选择,看看在给定的比赛中,哪些球队(按名称)相互对抗 select * from `Fooseball`.`match` INNER JOIN team T1 ON Fooseball.`match`.mHome_Team = T1.tID INNER JOIN team T2 ON Fooseball.`match`.mA
select * from `Fooseball`.`match`
INNER JOIN team T1
ON Fooseball.`match`.mHome_Team = T1.tID
INNER JOIN team T2
ON Fooseball.`match`.mAway_Team = T2.tID
WHERE mID=1
问题:
1是比创建两个主键更好的归档方法。比如,中间桌子
2如何构造select语句,以便将tName列命名为“home”和“away”或其他名称?当我试着说
INNER JOIN team AS T1
没有任何变化。尽管有未说明的附加要求,但我会这样做 要重命名结果中的列,可以执行以下操作
SELECT m.mDate AS match_date, T1.tName AS home_team, T2.tName AS away_team
FROM Fooseball.`match` m
INNER JOIN team T1
ON m.mHome_Team = T1.tID
INNER JOIN team T2
ON m.mAway_Team = T2.tID
WHERE mID=1
对于报告,您可以使用混合大小写和空格(例如“Home Team”)为列别名,方法是将别名用双引号括起来。尽管有未说明的其他要求,但我还是会这样做 要重命名结果中的列,可以执行以下操作
SELECT m.mDate AS match_date, T1.tName AS home_team, T2.tName AS away_team
FROM Fooseball.`match` m
INNER JOIN team T1
ON m.mHome_Team = T1.tID
INNER JOIN team T2
ON m.mAway_Team = T2.tID
WHERE mID=1
对于报告,您可以使用大小写和空格混合的列别名(例如“Home Team”),方法是将别名用双引号括起来。表中的
match
有两个外键指向Team
match
有一个主键,即mID
。match
表有两个外键指向team
match
有一个主键,即mID
。