У меня есть эти таблицы:
Фильмы (
id
,name
)В ролях (
idmovie
,actor
)
И я хотел бы подсчитать количество актеров для каждого фильма, а затем получить только фильмы с более чем 10 актерами. У меня есть запрос на подсчет количества актеров для каждого фильма, который выглядит следующим образом:
SELECT idmovie, count(actor) FROM Cast GROUP BY idmovie HAVING count(actor) > 10;
Теперь мне интересно, как получить этот результат и присоединить его к таблице Movies. Я старался:
SELECT name FROM Movies INNER JOIN (SELECT idmovie FROM Cast GROUP BY idmovie HAVING count(actor) >2) Cast ON Cast.idmovie = Movies.id;
Но это не работает.
Я также должен перевести это на реляционную алгебру.
π name (σ (count(σ id = idmovie))) Movies⨝Cast
Что явно неправильно...
Любая помощь?
INNER JOIN
— подзапросы не нужны. - person PM 77-1   schedule 12.10.2015