CommencerCommencer gratuitement

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

Afficher le cours

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;
Modifier et exécuter le code