열 기준 PARTITION BY
PARTITION BY 절을 사용하면 결과를 나눌 열을 기준으로 별도의 "윈도우"를 만들어 계산할 수 있어요. 예를 들어, 각 시즌별 전체 득점 평균을 계산하는 단일 열을 만들 수 있습니다.
이 연습에서는 폴란드 최상위 팀인 Legia Warszawa의 경기 데이터를 만들고, 각 경기의 성과를 해당 시즌의 전체 평균과 비교해 볼 거예요.
이상치가 더 많이 보이는 곳은 어디인가요? Legia Warszawa의 홈 경기인가요, 원정 경기인가요?
이 연습은 강의의 일부입니다
SQL에서의 데이터 조작
연습 안내
- 홈/원정 득점 평균을 계산하는 두 개의 윈도우 함수를 완성하세요. 각 시즌별로 별도의 평균이 계산되도록 윈도우 함수를 season으로 PARTITION 하세요.
- 쿼리를 필터링하여 Legia Warszawa가 치른 경기만 포함하도록 하세요. 팀
id = 8673입니다.
실습형 인터랙티브 연습
이 예제를 이 샘플 코드를 완성하여 풀어보세요.
SELECT
date,
season,
home_goal,
away_goal,
CASE WHEN hometeam_id = 8673 THEN 'home'
ELSE 'away' END AS warsaw_location,
-- Calculate separately the average home and away goals scored, partitioned by season
___(___) ___(___ ___ ___) AS season_homeavg,
___(___) ___(___ ___ ___) AS season_awayavg
FROM match
-- Filter the data set for Legia Warszawa (id 8673) matches only
WHERE
___ = ___
OR ___ = ___
ORDER BY (home_goal + away_goal) DESC;