2015-09-03 2 views
1

Предположим, у меня есть две таблицы, c_users и c_posts. c_posts имеет внешний ключ с именем post_author, который ссылается на c_users.SQL inner join дает ошибку

Пример

c_posts: ID = 17, post_author = 550

c_users: ID = 550, user_login = vsg24

Я хочу написать запрос, чтобы выбрать все сообщения, которые имеют соответствующий пользователь.

Это то, что я пробовал, но есть ошибки:

SELECT c.post_author, d.ID, 
FROM c_posts c, c_users d 
WHERE c.post_author = d.ID 

Также пробовали:

SELECT c_posts.post_author, c_users.ID, 
FROM c_posts INNER JOIN c_users ON c_posts.post_author = c_users.ID 

Что я делаю неправильно? (Редактирование: снимок экрана в комплекте)

http://imgur.com/CzRvsp8 F http://imgur.com/w3bDaOH

+0

Также, для справок в будущем, лучше всего включить эту ошибку! :) – Matt

+2

Посмотрите на ошибку. Он будет говорить об ошибке рядом с «c_posts». Посмотрите туда и увидите дополнительную запятую. – AdrianBR

ответ

2

Я предполагаю, что ошибки были из-за дополнительной , после полей выбора.

SELECT p.post_author, u.ID 
FROM c_posts p 
INNER JOIN c_users u ON p.post_author = u.ID 
+0

Ошибка запроса Mysql: у вас есть ошибка в синтаксисе SQL; проверьте руководство, соответствующее версии вашего сервера MySQL, для правильного синтаксиса, используемого рядом с '' в строке 1 – VSG24

+0

. моя вина. – VSG24