CommencerCommencez gratuitement

SQL en bref (2)

Une autre tâche courante dans le domaine des bases de données est l'agrégation. Il s'agit de réduire vos données en les divisant en segments et en résumant chaque segment.

Dans SQL, cela s'effectue à l'aide de la commande GROUP BY. Cette commande divise vos données en groupes et applique une fonction de votre instruction SELECT à chaque groupe.

Par exemple, si vous souhaitez compter le nombre de vols au départ de chacune des deux destinations d'origine, 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 insérer dans chacune des colonnes. Ici, nous souhaitons effectuer une opération COUNT() sur chaque ligne de chacun des groupes.

Il est possible d'utiliser GROUP BY pour plusieurs colonnes. Lorsque vous effectuez cette opération, la table obtenue comporte une ligne pour chaque combinaison des valeurs uniques de chaque colonne. La requête suivante dénombre le nombre de vols au départ de SEA et PDX vers chaque aéroport de destination :

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

La sortie comportera une ligne pour chaque combinaison des valeurs contenues dans origin et dest (c'est-à-dire une ligne répertoriant chaque origine et chaque destination desservies par un vol). Il y aura également une colonne contenant COUNT() de toutes les lignes de chaque groupe.

Veuillez noter qu'une analyse plus approfondie du langage SQL est disponible ici.

Quelles informations cette requête permettrait-elle d'obtenir ? Veuillez noter que la table flights contient des informations sur les vols au départ de PDX et SEA en 2014 et 2015. Veuillez noter que la fonction AVG() calcule la valeur moyenne d'une colonne.

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

Cet exercice fait partie du cours

<cours>Principes fondamentaux de PySpark</cours>
Voir le cours

Exercice interactif pratique

Transformez la théorie en action avec l’un de nos exercices interactifs

Commencer l’exercice