laravel объединение 3 столов, принадлежащих многим - PullRequest
0 голосов
/ 30 марта 2020

У меня есть 3 таблицы и 1 сводная таблица с 3 внешними ключами, я хочу показать имена всех исполнителей с указанием их работы для одного носителя, но я понятия не имею, как насчет объединения этих 3 таблиц

Таблица мультимедиа : media_id, media_title

таблица исполнителей : artist_id, artist_name

таблица заданий : job_id, job_name

сводная таблица : media_id, artist_id, job_id

Я пытался сделать с belongsToMany между ними но безрезультатно, покажите только имя артиста, но не можете получить имя его работы для каждого

Большое спасибо!

https://i.stack.imgur.com/2a92P.png

1 Ответ

0 голосов
/ 30 марта 2020

Можете ли вы дать связь между этими таблицами?

Я действительно не знал, что вы хотите, но попробуйте это.

\DB::table('media_artist_job')
     ->join('media','media.media_id','=','media_artist_job.media_id')
     ->join('job','job.job_id','=','media_artist_job.job_id')
     ->join('artist','artist.artist_id','=','media_artist_job.artist_id')
     ->select([
         'media.medial_title',
         'job.job_name',
         'artist.artist_name'
     ])->where('media.media_id',/*The media id you want to retrieve*/)->get();

Надеюсь, это поможет!

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...