2016-02-14 2 views
1

В принципе, у меня есть этот запрос:# 1054 - Неизвестные колонки - обратные кавычки проблема

SELECT *, `groups`.`goodname` 
FROM students AS s 
INNER JOIN groups AS g 
     ON s.univ_group = g.id 
WHERE name LIKE "%А%" 

И это дает эту ошибку при попытке запроса: #1054 - Unknown column 'groups.goodname' in 'field list'

Уже пытались 'groups'.goodname, 'groups.goodname', goodname.'groups', goodname.groups (' означает ` здесь из-за причин разметки SO) и так далее. Я знаю, что это связано с этими backticks, но я не могу понять, как это работает. Благодаря!

+0

Запрос в PMA с использованием сервера MariaDB последней версии. И да, я полностью уверен, что эта колонка существует :) –

+0

Есть ли необходимость в столбце, когда u r уже использует * – devpro

ответ

1

Как вы добавили псевдоним «групп» таблицы - «г», то запрос не распознает таблицу с именем groups больше, вам нужно использовать имя псевдонима, поэтому вам нужно изменить groups. goodname - g. goodname

SELECT *, g.`goodname` 
FROM students AS s 
INNER JOIN groups AS g 
     ON s.univ_group = g.id 
WHERE name LIKE "%А%" 
+0

Есть ли необходимость в столбце, когда u r уже использует * – devpro

+1

на самом деле нет. Но если вы хотите получить поле с точным или конкретным именем, вы можете это сделать. Например, SELECT *, g.'goodname' AS good_name –

+0

Да, согласен с примером yur – devpro