Не нравятся результаты поиска? Попробуйте другой поиск!
DLE FAQ » Все вопросы » MySQL » Как объединить несколько таблиц по нескольким полям в одном запросе MySQL?

Как объединить несколько таблиц по нескольким полям в одном запросе MySQL?


     21.03.2017    Все вопросы » MySQL    337

вопрос
Добрый день. У меня есть:
Таблица "заявки", в которой в которой хранятся: Номер заявки, ID пользователя, ID компании
Таблица "пользователи", в которой хранятся: ID пользователя и остальные персональные данные
Таблица "компании", в которой хранятся: ID компании, Название компании, ID типа компании
Таблица "типы компаний", в которой хранятся: ID типа компании, Наименование типа компании.

Примерная схема данных представлена на рисунке:
Как объединить несколько таблиц по нескольким полям в одном запросе MySQL?


Мне нужно вывести все заявки вместе с данными пользователя, данными компании и типом компании, в одном запросе, то есть "собрать" все таблицы относительно таблицы Request (Request.uID = Users.uID и Request.cID = Company.cID, к тому же ещё Company.tID = TypesOfCompany.tID)

Загружать заявки только с данными пользователя или только с данными компании было не сложно при помощи LEFT JOIN, но, а, когда дело коснулось загрузки всех данных одновременно, то всё зашло в тупик, ведь данные пользователя и данные компании ничего не знают друг о друге...

SELECT * FROM Request R LEFT JOIN Users U ON R.uID = U.uID

SELECT * FROM Request R LEFT JOIN (Company C LEFT JOIN TypesOfCompany T ON C.tID=T.tID) ON R.cID = C.cID


В общем, как я не пытался объединить это всё воедино - ничего не получалось. Надеюсь на вашу помощь, может подскажете решение, ну или хотя бы куда нужно копать :) Заранее спасибо.

Ответа пока нет


2 комментария

temporary
Юзер

temporary - 22 марта 2017 11:25 -

Может так:
SELECT r.rID, r.uID, u.uName, c.cID, c.tID, c.cName, t.tName FROM Request AS r LEFT JOIN Users AS u ON (u.uID = r.uID) LEFT JOIN Company AS c ON (c.cID = r.cID) LEFT JOIN TypesOfCompany AS t ON (t.tID = c.tID) WHERE 1

golden_eagle_god
Юзер

golden_eagle_god - 22 марта 2017 14:42 -

Благодарю

Чтобы комментировать - войдите или зарегистрируйтесь на сайте

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

 20.08.2014 Pringles  MySQL
наверх