상관 서브쿼리 시작하기
상관 서브쿼리는 메인 쿼리의 하나 이상의 열을 참조하는 서브쿼리입니다. 상관 서브쿼리는 실행 시 메인 쿼리의 정보에 의존하기 때문에, 단독으로는 실행할 수 없습니다.
상관 서브쿼리는 SQL에서 가져온 데이터의 각 행마다 한 번씩 평가됩니다. 이 과정은 단순 서브쿼리보다 훨씬 많은 컴퓨팅 파워와 시간이 소요됩니다.
이번 연습 문제에서는 상관 서브쿼리를 사용하여 각 국가의 평균 점수보다 3배를 초과하는 극단적인 이상치에 해당하는 경기를 찾아보는 연습을 해보겠습니다.
이 연습은 강의의 일부입니다
SQL 데이터 조작
연습 안내
WHERE의 서브쿼리에서 홈 득점과 원정 득점의 평균/mean을 구하는 것으로 시작하세요.- 서브쿼리의 열 참조를 완성하여,
country_id가main과sub테이블에서 매칭되도록 만드세요.
실습형 인터랙티브 연습
이 예제를 이 샘플 코드를 완성하여 풀어보세요.
SELECT
main.country_id,
main.date,
main.home_goal,
main.away_goal
FROM match AS main
WHERE
-- Filter the main query by the subquery
(home_goal + away_goal) >
(SELECT AVG((___ + sub.away_goal) * 3)
FROM match AS sub
-- Join the main query to the subquery with country_id in WHERE
WHERE main.___ = sub.___);