CommencerCommencer gratuitement

SQL en bref (2)

L'agrégation est une autre tâche courante dans les bases de données. Il s'agit de réduire vos données en les divisant en morceaux et en résumant chaque morceau.

Cette opération s'effectue dans SQL à l'aide de la commande GROUP BY. Cette commande divise vos données en groupes et applique une fonction de votre déclaration SELECT à chaque groupe.

Par exemple, si vous souhaitez compter le nombre de vols au départ de deux destinations, vous pouvez utiliser la requête suivante

SELECT COUNT(*) FROM flights
GROUP BY origin;

GROUP BY origin indique à SQL que vous souhaitez que la sortie comporte une ligne pour chaque valeur unique de la colonne origin. L'instruction SELECT sélectionne les valeurs que vous souhaitez voir figurer dans chacune des colonnes. Ici, nous voulons COUNT() chaque ligne dans chacun des groupes.

Il est possible de GROUP BY plus d'une colonne. Le tableau qui en résulte comporte une ligne pour chaque combinaison de valeurs uniques dans chaque colonne. La requête suivante compte le nombre de vols à partir de SEA et PDX vers chaque aéroport de destination :

SELECT origin, dest, COUNT(*) FROM flights
GROUP BY origin, dest;

Le résultat comportera une ligne pour chaque combinaison de valeurs dans origin et dest (c'est-à-dire une ligne énumérant chaque origine et destination d'un vol). Il y aura également une colonne contenant les COUNT() de toutes les lignes de chaque groupe.

N'oubliez pas que vous trouverez un aperçu plus approfondi de SQL en cliquant ici.

Quelles informations cette requête permettrait-elle d'obtenir ? Rappelez-vous que le tableau flights contient des informations sur les vols qui ont quitté PDX et SEA en 2014 et 2015. Notez que la fonction AVG() permet d'obtenir la valeur moyenne d'une colonne !

SELECT AVG(air_time) / 60 FROM flights
GROUP BY origin, carrier;

Cet exercice fait partie du cours

Introduction à PySpark

Afficher le cours

Exercice interactif pratique

Passez de la théorie à la pratique avec l’un de nos exercices interactifs

Commencer l’exercice