我为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
我发疯了因为它似乎没有错,但解释器说'match M INNER JOIN created_by C ON C.MatchId=M.Id INNER JOIN user U O'
附近有语法错误。
感谢您的任何建议。
答案 0 :(得分:8)
MATCH
是MySQL reserved keyword。如果您打算将其用作列名或表名,请将其括在反引号中。
SELECT U.Id, U.Name, U.Surname
FROM `match` M
答案 1 :(得分:3)
我认为 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