PaliSkill
SQL débutant

Leçon 7 / 9 — Chapitre 5: Fonctions d'agrégation

Fonctions d'agrégation avec WHERE

Toutes les fonctions d'agrégation vues dans ce chapitre (COUNT, SUM, AVG, MIN, MAX) suivent la même règle avec WHERE : le filtre s'applique avant l'agrégation, jamais après.

SELECT COUNT(*), AVG(prix) FROM produits WHERE stock > 20;

Ce code filtre d'abord sur stock > 20 (vu au deuxième chapitre), gardant Cahier (40), Stylo (120), Savon (25), puis calcule le nombre de lignes (3) et le prix moyen de ces 3 lignes uniquement : (500 + 100 + 300) / 3 = 300.

L'ordre d'écriture reste le même que vu au chapitre précédent : WHERE avant toute agrégation dans le SELECT, même si l'agrégation elle-même s'écrit dans le SELECT, avant le mot-clé WHERE.

SELECT SUM(prix) FROM produits WHERE categorie IN ('hygiene', 'boisson');

Ce code combine SUM avec IN (vu au troisième chapitre) : seuls Savon, Dentifrice et Jus sont filtrés, puis leurs prix additionnés : 300 + 500 + 600 = 1400.

À retenir :

  • Le filtre WHERE s'applique toujours avant qu'une fonction d'agrégation ne traite les lignes restantes.
  • Toute condition WHERE vue jusqu'ici (comparaisons, LIKE, IN, BETWEEN) se combine librement avec une agrégation.

À vous de jouer : écrivez une requête qui calcule le prix moyen des produits dont le nom commence par la lettre S.

🔒

Continuez ce module

Débloquez les leçons restantes ainsi que la certification finale.

2 500 XOF / 3,81 € / 4,15 $

Débloquez les 84 leçons restantes de ce module

Votre paiement est vérifié avant l'activation de l'accès