1
У меня есть 3 таблицы (из sakila sample db): film, film_actor и actor.MySQL - вложенная конкатенация результатов
Film: (1000 rows) film_id | title | .... ______________________ 1 | a | .... 2 | b | .... 3 | c | .... 4 | d | .... 5 | e | .... ......................
Film_actor:(5000+ rows) actor_id | film_id | .... ______________________ 1 | 12 | .... 1 | 33 | .... 2 | 210 | .... 3 | 2 | .... 3 | 500 | .... ......................
Actor:(~200 rows) actor_id | first_name | last_name __________________________________ 1 | a | f 2 | b | g 3 | c | h 4 | d | i 5 | e | l ...............................
Есть ли способ, чтобы получить результат, который выглядит следующим образом:
title(film) | actors(first_name, last_name) _________________________________________________________________________ title 1 | first_name1 last_name1, first_name2 last_name2, etc.. title 2 | first_name1 last_name1, first_name2 last_name2, etc.. title 3 | first_name1 last_name1, first_name2 last_name2, etc.. title 4 | first_name1 last_name1, first_name2 last_name2, etc.. title 5 | first_name1 last_name1, first_name2 last_name2, etc.. .........................................................................
т.е. получение списка фильма заказанный ID со всеми актерами, играющие в фильме в вторая колонка.
Я уже проверял, но ответ на Stack Overflow, похоже, не соответствует моему вопросу со вложенной конкатенации.
Мне нужно получить этот результат только через запрос MySQL.
Вы можете создать таблицу, подобную этой, используя комбинацию SQL и любой язык программирования, который хорошо работает с SQL, например php, довольно легко. –
Да, мое плохое. Я забыл указать, что я пытаюсь получить этот результат через один запрос. Я знаю, что, используя php, это довольно просто, но это своего рода академическое упражнение. Благодарю. – MisterP