LEFT JOIN上的语法错误

时间:2012-08-06 15:34:52

标签: mysql join left-join

这里有什么问题?

SELECT u.id
FROM user u
LEFT JOIN group g ON g.id=u.group_id

返回以下错误

#1064 - You have an error in your SQL syntax; check the manual that
corresponds to your MySQL server version for the right syntax to
use near 'group g ON g.id=u.group_id LIMIT 0, 30' at line 3

3 个答案:

答案 0 :(得分:3)

由于GROUP子句,

GROUP BY是SQL标准中的保留字。甚至Stack Overflow也用蓝色突出显示;)

如果您想使用group作为标识符,则必须这样引用:

`group`

您也可以将表重命名为更有意义的内容,例如UserGroup。这也将解决您的问题。

答案 1 :(得分:1)

“group”是MySQL的保留关键字。

您可以使用下一个查询来避免此错误:

SELECT u.id
FROM user u
LEFT JOIN `group` g ON g.id=u.group_id

建议避免使用“group”作为表名。

答案 2 :(得分:1)

'group'是SQL的关键字。你可以试试这个:

SELECT u.id
FROM 'user' u
LEFT JOIN 'group' g ON u.group_id = g.id