MS Access SQL:多个表上的 INSERT 和 INNER JOIN 给出了丢失的运算符错误

MS Access SQL : INSERT and INNER JOIN on multiple tables gives missing operator error

我是 MS Access 的新手 SQL,我正在尝试 JOIN 三个 table 到 INSERT 一堆 ID 到另一个 table.

我现在的查询是:

INSERT INTO FixturePlayers (FixtureId, PlayerId, TeamId, [Position] )
   SELECT 
      tempFixtureSquad.FixtureId,  Players.PlayerId,  Teams.TeamId, 
      tempFixtureSquad.Position
   FROM 
      tempFixtureSquad
   INNER JOIN 
      Players ON tempFixtureSquad.FirstName =  Players.FirstName 
              AND tempFixtureSquad.LastName = Players.LastName
   INNER JOIN 
      Teams ON tempFixtureSquad.Team = Teams.Team

但是当我尝试保存它时,Access 说:

Syntax error (missing operator) in query expression ".

这对我来说意味着甜蜜的虚无!它甚至看起来像一个无意义的消息。最后有一个 " 就在那里……我的查询中没有 " 。据我所知,没有必要。

Table tempFixtureSquad 有列 ID(PK),FixtureIdTeam(团队名称),PositionFirstName(字符串)和 LastName(字符串)

所以我需要 JOIN 这个 table 到 table s PlayersTeams 来获得玩家的 IDtempFixtureSquad table 中每条记录的团队,因为 FixturePlayers table 它需要插入到仅使用 ID 且没有字符串列(来自 table 的列是在 INSERT INTO 子句中列出)

我做错了什么?塔

尝试添加括号:

FROM (tempFixtureSquad INNER JOIN Players ON tempFixtureSquad.FirstName = Players.FirstName AND tempFixtureSquad.LastName = Players.LastName) INNER JOIN Teams ON tempFixtureSquad.Team = Teams.Team