2012-08-06 6 views
0

Что здесь не так?Ошибка синтаксиса с левой стороны

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

GROUP является зарезервированным словом в стандарте SQL в связи с пунктом GROUP BY. Даже Stack Overflow подсвечивает синим цветом;)

Если вы хотите использовать group в качестве идентификатора, вы должны указать это так:

`group` 

Вы также можете переименовать таблицу, чтобы что-то более значимое, как UserGroup , Это также решит вашу проблему.

1

"group" - это зарезервированное ключевое слово MySQL.

Вы можете избежать этой ошибки при следующем запросе:

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

Рекомендуется избегать использования «группы» в качестве имени таблицы.

1

«группа» - это ключевое слово SQL. Вы можете попробовать:

SELECT u.id 
FROM 'user' u 
LEFT JOIN 'group' g ON u.group_id = g.id 
Смежные вопросы