SQL JOIN 与 SQL SERVER 中团队表中的团队名称

标签 sql sql-server join

我想在比赛时间表中显示球队名称,我使用下面的查询,但它让我的 TeamA 和 TeamB 具有相同的名称

SELECT m.ID AS MID,  MatchDate,  
t.Name AS TeamName, 'v' AS VS,  
t.Name AS TeamName, Group
  FROM Matches m 
JOIN Team T ON  m.TeamA_ID = t.Id 
JOIN  Team T2 ON m.TeamB_ID = t2.Id 

如何根据TeamA_ID、TeamB_ID获得正确的团队名称

桌面团队

ID
TeamName
TeamCountry

牌 table 比赛

ID
MatchDate
TeamA_ID
TeamB_ID
Location
Group


ID      TeamName        TeamCountry
1       TeamOne         100
2       TeamTwo         30
3       TeamThree       80
4       TeamFour        90
5       TeamFive        98
6       TeamSix         99
7       TeamSeven       200
8       TeamEight       14


ID      MatchDate       TeamA_ID    TeamB_ID    Location    Group
1       01-01-2019      2           4           L1          A
2       02-01-2019      6           1           L1          A
3       04-01-2019      5           8           L1          B
4       06-01-2019      2           6           L1          B
5       10-01-2019      3           4           L1          C
6       16-01-2019      5           6           L1          C   

我想要结果为

ID      Date            TeamName        vs      TeamName    Location    Group
1       01-01-2019      TeamTwo         v       TeamFour        L1          A
2       02-01-2019      TeamSix         v       TeamOne         L1          A
3       04-01-2019      TeamFive        v       TeamEight       L1          B
4       06-01-2019      TeamTwo         v       TeamSix         L1          B
5       10-01-2019      TeamThree       v       TeamFour        L1          C
6       16-01-2019      TeamFive        v       TeamSix         L1          C

最佳答案

只是一个简单的错误(您有两次t.Name,而不是t2.Namet.Name)

SELECT m.ID AS MID,  MatchDate,  
    t.Name AS TeamName,
    t2.Name AS TeamName,
    ...

关于SQL JOIN 与 SQL SERVER 中团队表中的团队名称,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55721308/

相关文章:

mysql - SQL 数据库中的图像

python - 连接数据帧的片段

mysql - 如何过滤表并连接结果

sql-server - 如何选择最近3个月?

mysql - 使用 JOIN 进行复杂 SQL 查询

mysql - 按天分组但使用另一个条件的 SQL 查询

sql - 查询是否存在多个多对多关系

mysql - 获取匹配相同标签sql的实体列表

sql-server - 什么时候分配空间

c# - 如何在转发器中将文本框值获取到数据库?