Mysql 我在这个SQL中遗漏了什么?

Mysql 我在这个SQL中遗漏了什么?,mysql,sql,Mysql,Sql,我已经为MySQL数据库编写了一些SQL SELECT U.Id, U.Name, U.Surname FROM match M INNER JOIN created_by C ON C.MatchId = M.Id INNER JOIN user U ON U.Id = C.UserId WHERE M.Id = 3 我快发疯了,因为它看起来没有错,但是解释器说在C.MatchId=m.Id内部连接用户U上C创建的match m Internal JOI

我已经为MySQL数据库编写了一些SQL

SELECT U.Id, U.Name, U.Surname 
  FROM match M 
 INNER JOIN created_by C 
    ON C.MatchId = M.Id 
 INNER JOIN user U 
    ON U.Id = C.UserId 
 WHERE M.Id = 3
我快发疯了,因为它看起来没有错,但是解释器说在C.MatchId=m.Id内部连接用户U上C创建的match m Internal JOIN附近有一个语法错误。

谢谢你的建议。

匹配
是一个很好的选择。如果要将其用作列或表名,请将其括在反勾中

SELECT U.Id, U.Name, U.Surname 
  FROM `match` M 
我认为
user
&
match
是一个保留关键字。你需要逃避它。请尝试以下查询

SELECT U.Id, U.Name, U.Surname 
  FROM `match` M 
 INNER JOIN `created_by` C 
    ON C.MatchId = M.Id 
 INNER JOIN `user` U 
    ON U.Id = C.UserId 
 WHERE M.Id = 3
可能重复的