Utilisez PARTITION BY sur plusieurs colonnes
La clause PARTITION BY
peut être utilisée pour répartir les moyennes des fenêtres en fonction de plusieurs points de données (colonnes). Vous pouvez même calculer les informations que vous souhaitez utiliser pour segmenter vos données ! Par exemple, vous pouvez calculer la moyenne des buts marqués par saison et par pays, ou par année civile (à partir de la colonne date).
Dans cet exercice, vous allez calculer le nombre moyen de buts marqués à domicile et à l’extérieur par le Legia Varsovie et ses adversaires, répartis par mois dans chaque saison.
Cet exercice fait partie du cours
Manipulation de données en SQL
Instructions
- Élaborez deux fonctions de fenêtre répartissant la moyenne des buts marqués à domicile et à l’extérieur selon la saison et le mois.
- Filtrez le jeu de données par l’ID de l’équipe du Legia Varsovie(
8673
) afin que le calcul de la fenêtre n’inclue que les matches impliquant cette équipe.
Exercice interactif pratique
Essayez cet exercice en complétant cet exemple de code.
SELECT
date,
season,
home_goal,
away_goal,
CASE WHEN hometeam_id = 8673 THEN 'home'
ELSE 'away' END AS warsaw_location,
-- Calculate average goals partitioned by season and month
___(home_goal) ___(___ ___ ___,
EXTRACT(___ FROM date)) AS season_mo_home,
___(away_goal) ___(___ ___ ___,
EXTRACT(___ FROM date)) AS season_mo_away
FROM match
WHERE
hometeam_id = ___
OR awayteam_id = ___
ORDER BY (home_goal + away_goal) DESC;