Aller au contenu principal

Les fonctions d'agrégation

Notions théoriques

Les fonctions d'agrégation en SQL sont utilisées pour effectuer des calculs sur un ensemble de valeurs et retourner une seule valeur.

Elles sont souvent utilisées avec le mot clé GROUP BY (que nous étudierons plus tard).

Voici une présentation des principales fonctions d'agrégation :

  • COUNT(): Cette fonction retourne le nombre de lignes qui correspondent à une condition spécifiée.

  • MAX(): Cette fonction retourne la valeur la plus élevée d'une colonne sélectionnée.

  • MIN(): Cette fonction retourne la valeur la plus basse d'une colonne sélectionnée.

  • SUM(): Cette fonction retourne la somme totale d'une colonne numérique.

  • AVG(): Cette fonction retourne la valeur moyenne d'une colonne numérique.

Exemple pratique

Prenons un exemple avec la base de données de notre bibliothèque.

MPD_bibliotheque.png

Supposons que nous voulons connaître le nombre total de livres, le livre le plus récent, le livre le plus ancien, la somme des pages et la moyenne des pages. Nous pourrions utiliser des requêtes comme celles-ci :

SELECT COUNT(id), MAX(année), MIN(année), SUM(pages), AVG(pages)
FROM livres;

Cette requête retournera le nombre total de livres, l'année du livre le plus récent, l'année du livre le plus ancien, la somme des pages de tous les livres et la moyenne des pages.

Test de mémorisation/compréhension


Que fait la fonction `COUNT()` en SQL ?


Que fait la fonction `MAX()` en SQL ?


Que fait la fonction `MIN()` en SQL ?


Que fait la fonction `SUM()` en SQL ?


Que fait la fonction `AVG()` en SQL ?



TP pour réfléchir et résoudre des problèmes

Pour ce TP, nous allons continuer à explorer la base de données de la bibliothèque.

Télécharger le fichier 'cdi.sql' - Télécharger le MCD


Mission 1

MPD_bibliotheque.png

Votre mission est de trouver le nombre total de livres dans la bibliothèque.

Une solution

Mission 2

MPD_bibliotheque.png

Votre mission est de trouver le nombre de pages du livre qui a le plus de pages.

Une solution