Я отвечаю на свой вопрос, потому что думаю, что это поможет другим и сэкономит драгоценное время.
$movie_list = DB::table('movies')
->select( 'movies.id', 'movies.title', 'movies.release_year', 'movies.img_url', 'plot', 'imdb_rating', 'rotten_rating', 'meta_rating', 'status',
DB::raw('group_concat(DISTINCT(movie_directors.director_name) SEPARATOR ',') as directors'),
DB::raw('group_concat(DISTINCT(movie_actors.actor_name)) as actors'),
DB::raw('group_concat(DISTINCT(movie_genres.genre)) as genres'),
DB::raw('group_concat(DISTINCT(movie_links.movie_link)) as links'),
DB::raw('group_concat(DISTINCT(movie_links.link_type)) as link_types'),
DB::raw('group_concat(DISTINCT(movie_types.movie_type)) as movie_types')
)
->join('movie_directors','movies.id', '=','movie_directors.movie_id')
->join('movie_actors', 'movies.id', '=', 'movie_actors.movie_id')
->join('movie_genres', 'movies.id', '=', 'movie_genres.movie_id')
->join('movie_links', 'movies.id', '=', 'movie_links.movie_id')
->join('movie_types', 'movies.id', '=', 'movie_types.movie_id')
->groupBy('movies.id', 'movies.title', 'movies.release_year', 'movies.img_url', 'plot', 'imdb_rating', 'rotten_rating', 'meta_rating', 'status')
->paginate(50) ;