Les fonctions de groupe (COUNT, SUM, AVG) nécessitent une structure spécifique lorsqu'elles sont mixées avec des champs de texte.
Le gestionnaire souhaite connaître "le nombre total d'abonnements souscrits par chaque client". Dans la clause SELECT, il utilise la fonction COUNT(IdAbo) et affiche le NomClient. Quelle clause SQL est alors strictement obligatoire pour que la requête fonctionne sans générer d'erreur ?
La clause GROUP BY NomClient est indispensable. Dès lors qu'une fonction d'agrégation (COUNT) est utilisée en même temps qu'une colonne classique (NomClient) dans le SELECT, le SGBD exige que l'on regroupe les données par cette colonne classique pour pouvoir calculer le sous-total correspondant à chaque client.