指定的字段'匹配ID'可以引用sql语句的FROM子句中列出的多个表

时间:2014-03-11 20:36:17

标签: sql

我试图给出一个球员没有参加但在球队中列出的比赛数量。如果他没有参加每场比赛的分钟,我将实施零分。 PLease PLease帮助!!!

SELECT tblGameResults.MatchID, Player_ID_Number, Minutes_Per_Game
FROM 
  tblGameResults 
INNER JOIN 
  tblPlayerStatistics ON tblGameResults.MatchID = tblPlayerStatistics.MatchID
WHERE Minutes_Per_Game = 0
GROUP BY 
  tblGameResults.MatchID

1 个答案:

答案 0 :(得分:0)

虽然你的查询在概念上看起来像是可行的,但这里有一些指针(我在Minutes_Per_Game和Player_ID_Number来自的表上做了一些猜测):

为所有表名提供别名

SELECT game.MatchID, stats.Player_ID_Number, stats.Minutes_Per_Game
FROM 
  tblGameResults as game
INNER JOIN 
  tblPlayerStatistics as stats ON game.MatchID = stats.MatchID
WHERE stats.Minutes_Per_Game = 0
GROUP BY 
  game.MatchID

这可以帮助您确定问题所在,或者它将帮助数据库知道从哪里提取列。此外,您正在选择三列。你可能应该按所有这些分组,除非你想在select语句的最后两个上做一些聚合函数。