더북(TheBook)

Self Check

1 정답

SELECT YEAR(a.release_date), a.movie_name, a.sale_amt
  FROM box_office a,
       (SELECT AVG(sale_amt) avg_amt
          FROM box_office
         WHERE ranks = 1
        ) b
 WHERE a.ranks = 1
   AND a.sale_amt > b.avg_amt
 ORDER BY 1;

실행결과

해설 코드 9-1을 메인쿼리로 하고 연도별 1위 영화의 전체 매출액 평균을 구하는 코드 9-3을 파생 테이블로 만들어 b라는 별칭을 줍니다. 그런 다음 메인쿼리에서 box_office 테이블의 매출액이 파생 테이블에서 반환되는 매출액 평균(avg_amt)보다 크다는 조건을 추가로 기술합니다. 이렇게 하면 해당 연도에 매출액이 연도별 1위 영화의 매출액 평균보다 큰 영화만 조회할 수 있습니다.

신간 소식 구독하기
뉴스레터에 가입하시고 이메일로 신간 소식을 받아 보세요.