Задать вопрос
@depressionofoleg

Как правильно указать WHERE если делаем LEFT JOIN?

Недавно начал изучать MySQL, так что не ругайте строго.
Имеются 3 базы данных, одна именами и айдишниками(users), вторая для соединения множественной выборки(group_type) , третья c с типами и айдишниками(types). Как создать правильно RIGHT JOIN между таблицами, чтобы указать, что в таблице будет WHERE на id user(то есть выбираем отпределенного пользователя).
Пример кода:
SELECT u.*, t.type_name, t.description FROM users AS u WHERE id = 1
                LEFT JOIN type_user AS tu ON tu.id_user = u.id 
                LEFT JOIN types AS t ON tu.id_type = t.id AND;

Если указывать вначале WHERE выдает ошибку, а таблица нужна только по пользователю с определенным id.
Спасибо.
  • Вопрос задан
  • 220 просмотров
Подписаться 1 Простой 3 комментария
Решения вопроса 1
@Akina
Сетевой и системный админ, SQL-программист.
Порядок кляуз в запросе чётко определён в документации, и никаких изменений и перестановок не предполагает (исключение - кляуза INTO при помещении результата в переменную, для которой описано 3 разных местоположения).
SELECT u.*, t.type_name, t.description 
FROM users AS u 
LEFT JOIN type_user AS tu ON tu.id_user = u.id 
LEFT JOIN types AS t ON tu.id_type = t.id
WHERE u.id = 1;
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 1
warlinx
@warlinx
where после всех join указывать
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы