0
Пусть следующую базу данных кино, где пользователь может критики кино и назначить оценку от 0 до 10, чтобы его критики:SQL делит два столбца
MOVIE (idMovie)
PK (idMovie)
CRITICS (idMovie, user, score)
PK (idMovie, user)
FK (idMovie) REF MOVIE
NN score
Как бы идти о показывая все идентификаторы фильмов, которые имеют их среднее значение критики оценивают более 80%? Что-то вроде:
WITH CMINUSEIGHT AS (
SELECT C.idFilm, COUNT(C.idFilm) AS cpCount FROM CRITIQUE C
WHERE C.note > 8
GROUP BY C.idFilm),
AVERAGE AS (
SELECT C.idFilm, (COUNT(C.idFilm)/CP.cpCount * 100) AS cmCount FROM CRITIQUE C, CPLUSHUIT CP
WHERE C.note < 9
GROUP BY C.idFilm)
SELECT C.idFilm FROM CRITIQUE C, AVERAGE A
WHERE C.idFilm = A.idFilm
HAVING AVERAGE > 80;
Спасибо.