Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/sql-server/21.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
使用SQL SERVER中teams表中的团队名称进行SQL联接_Sql_Sql Server_Join - Fatal编程技术网

使用SQL SERVER中teams表中的团队名称进行SQL联接

使用SQL SERVER中teams表中的团队名称进行SQL联接,sql,sql-server,join,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

我想在比赛日程中显示球队名称,我使用下面的查询,但它会使我得到相同名称的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
表格匹配

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.Name
t.Name

你差点就成功了

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

在select中,选择t.Name两次,将第二个更改为t2.Name

    SELECT m.ID AS MID,  MatchDate,  
t.Name AS TeamName, 'v' AS VS,  
t2.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 

只是打字错误。使用
t2.
而不是
t.
来显示第二队的名字谢谢,我没有被注意到,等待了30分钟,因为我看不到小的类型/错误..是的,我们都经历过。你看着自己的错误,但能看到它。快乐编码
    SELECT m.ID AS MID,  MatchDate,  
t.Name AS TeamName, 'v' AS VS,  
t2.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