2
Я не специалист по db, и это точно вопрос новичков.получить данные из базы видеоролика
У меня есть SQLite db, содержащий данные о фильмах.
Основная таблица (фильмы) содержит:
- movie_id (автоинкрементного, первичная);
- название;
- год;
- другие поля;
Тогда у меня есть актеров таблицу:
- actor_id (автоинкрементного);
- имя;
- фамилия;
Тогда у меня есть литой стол:
- movie_id (относящийся к таблице фильмов);
- actor_id (относящийся к таблице актеров, например, Робин Уильямс);
- character_name (имя персонажа, например «Mrs Doubtfire»);
В одном запросе я должен получить все символы данного фильма (на уровне приложения у меня есть идентификатор текущего фильма), имя и фамилия актера и список фильмов (! = этот фильм), где актер сыграл свою роль:
Character_name | Actor | Other movies where we've seen this actor
Mrs Doubtfire | Robin Williams | Mork & Mindy, Dead Poets Society, ...
Other name | Other actor | Related movies,...
Возможно ли это? Как?
Это похоже на работу, но мое невежество много вопросов :-) Один из них: почему «Макс»? –
Это потому, что я группирую actor_id - в большинстве SQL (исключение MySQL), поле в сгруппированном элементе select должно быть либо агрегировано, либо включено в предложение group. В этом случае (поскольку имена все функционально зависят от actor_id), я * мог * добавить имена в предложение group, не затрагивая остальную часть запроса, но я нахожу, что яснее группировать только требуемые поля, что означает что я должен использовать агрегатную функцию для имен. –
Марк, мне нужно много учиться, но ваш запрос - отличная отправная точка ;-) –