Хорошо, скажем, у меня есть макет базы данных, подобный той, что приведен в примере, который я предоставил. В приведенных выше примерах фильмы имеют выпуски на языках, и эти фильмы также имеют театральные релизы в разных театрах.
Теперь, если бы я хотел запросить базу данных, чтобы получить все выпуски кинотеатра, а также все видеоролики, как мне это сделать?
Текущий код у меня есть:
select
GROUP_CONCAT(movie.name, ",", language.lang, ",", GROUP_CONCAT(theatre.name)) as releases
from
movie
left join movie_releases on movie_releases.movie_id = movie.id
left join language on movie_release.language_id = language.id
left join theatre_release on theatre_release.movie_release_id = movie_release.id
left join theatre on theatre.id = theatre_release.theatre_id
Очевидно, что это не работает, потому что вы не можете вкладывать GROUP_CONCAT функции, как это.
Мой желаемый результат будет что-то вроде
["Spiderman", "English", ["Cinema Theatre", "Garden Cinemas"]]
["Spiderman", "Spanish", ["El Cine Grande"]]
["Batman", "English", ["Town Movies"]]
без набора данных, как палка без леденца. См. Http://meta.stackoverflow.com/questions/333952/why-should-i-provide-an-mcve-for-what-seems-to-me-to-be-a-very-simple-sql-query – Strawberry
@Strawberry Спасибо за то, что вы вообще не помогли. – user2827048