Sql server 我对这个子查询有问题

Sql server 我对这个子查询有问题,sql-server,Sql Server,我有一个名为Teams的表,其中包含以下列:TeamName、TeamID等 和一个表匹配,它有:Team1_id、Team2_id、Team1_目标、Team2_目标等 我想要一张这样的表格:TeamName1 Team1\u目标TeamName2 Team2\u目标 我试过这样的方法: select Teams.TeamName, Matches.Team1_Goals , (select Teams.TeamName where Teams.TeamID = Matches.Tea

我有一个名为Teams的表,其中包含以下列:TeamName、TeamID等 和一个表匹配,它有:Team1_id、Team2_id、Team1_目标、Team2_目标等

我想要一张这样的表格:TeamName1 Team1\u目标TeamName2 Team2\u目标

我试过这样的方法:

select Teams.TeamName, Matches.Team1_Goals
    , (select Teams.TeamName where Teams.TeamID = Matches.Team2_ID) as TeamName2
    , Matches.Team2_Goals
from Matches
inner join Teams on Teams.TeamID = Matches.Team1_ID
inner join Teams as Teams2 on Teams2.TeamID = Matches.Team2_ID

但它没有返回我想要的。有人能帮我吗?

不需要子查询。只需从每个团队表联接中提取一个团队名称

大概是这样的:

SELECT t1.TeamName     AS team1_name
     , m.Team1_Goals   AS team1_goals

     , t2.TeamName     AS team2_name
     , m.Team2_Goals   AS team2_goals 

  FROM Matches m

  JOIN Teams t1
    ON t1.TeamID = m.Team1_ID

  JOIN Teams t2
    ON t2.TeamID = m.Team2_ID

 ORDER
    BY ... 

不需要子查询。只需从每个团队表联接中提取一个团队名称

大概是这样的:

SELECT t1.TeamName     AS team1_name
     , m.Team1_Goals   AS team1_goals

     , t2.TeamName     AS team2_name
     , m.Team2_Goals   AS team2_goals 

  FROM Matches m

  JOIN Teams t1
    ON t1.TeamID = m.Team1_ID

  JOIN Teams t2
    ON t2.TeamID = m.Team2_ID

 ORDER
    BY ... 

您的问题是关于如何将表格格式化为您想要的格式吗?还有你的密码返回了什么?@wesparmer是的。我的代码返回TeamName1 Team1_目标,但TeamName2始终为空,Team2_目标始终为0。从何处选择Teams.TeamName?。请提供示例数据和预期结果。是否要表格?还是结果集?正如Sami所说,我们需要看到一些样本数据和预期结果。您的问题是关于如何将表格格式化为您想要的格式吗?还有你的密码返回了什么?@wesparmer是的。我的代码返回TeamName1 Team1_目标,但TeamName2始终为空,Team2_目标始终为0。从何处选择Teams.TeamName?。请提供示例数据和预期结果。是否要表格?还是结果集?正如萨米所说,我们需要看到一些样本数据和预期结果。