Fonctions dagrégation dans SQL et leur utilisation

Dans ce didacticiel, nous discuterons des différentes fonctions d'agrégation dans SQL et de la manière dont nous pouvons les utiliser. Dans SQL, les fonctions d'agrégat sont utilisées pour accumuler des données de plusieurs lignes dans une seule ligne récapitulative. 

Les fonctions d'agrégation dans SQL peuvent être très utiles pour les analystes lors de la synthèse des données.

Table des matières

Fonctions d'agrégation couramment utilisées en SQL

Vous trouverez ci-dessous quelques-unes des fonctions d'agrégation couramment utilisées dans SQL .

Fonctions d'agrégation dans SQL et leur utilisation

Notez que les fonctions et sont couramment utilisées dans les devises ou les valeurs entières. La fonction AVG renvoie non seulement la moyenne mais également la moyenne d'une colonne. De plus, la fonction d'agrégation est la seule qui n'ignore pas les valeurs nulles lors de l'exécution des calculs.

Faisons quelques exemples de commandes en utilisant nos cinq fonctions d'agrégation avec l'exemple de tableau ci-dessous.

Fonctions d'agrégation dans SQL et leur utilisation

Commençons par créer une commande à l'aide de la fonction MAX . Supposons que nous voulions trouver le produit ayant la valeur la plus élevée dans la colonne ProductName. Notre commande devrait ressembler à l'image ci-dessous.

Fonctions d'agrégation dans SQL et leur utilisation

Puisque nous recherchons le produit ayant la valeur la plus élevée, nous devons obtenir leurs prix, qui se trouvent sous la colonne ProductPrice . Mettez toujours un alias pour donner un nom à la colonne de sortie. Si nous exécutons cette commande, elle nous montrera le produit ayant la valeur la plus élevée avec une seule valeur. 

Ensuite, faisons une commande en utilisant la fonction MIN . Étant donné que la fonction MIN est quelque peu similaire à la fonction MAX , nous utiliserons simplement le même exemple que celui que nous avons utilisé dans la fonction MAX mais cette fois, nous trouverons le produit de valeur la plus faible.

Fonctions d'agrégation dans SQL et leur utilisation

Lorsque nous exécutons cette commande, elle récupère le produit ayant la valeur la plus faible dans notre exemple de table.

Maintenant, faisons une commande en utilisant la fonction COUNT . Disons que nous voulons trouver la quantité de produits sous la colonne ProductID . Notre commande devrait ressembler à l'image ci-dessous.

Fonctions d'agrégation dans SQL et leur utilisation

Si nous exécutons cette commande, elle nous montrera la quantité de chaque produit sous la colonne ProductID et leur prix respectif.

Fonctions d'agrégation et clause GROUP BY

Voyons maintenant comment nous pouvons utiliser plusieurs colonnes avec des fonctions d'agrégation . Pour ce faire, nous devons utiliser la clause GROUP BY .

La fonction GROUP BY est principalement utilisée dans les fonctions d'agrégation car elle renvoie un enregistrement de chaque groupe. En outre, toutes les colonnes de l'instruction SELECT, même sans agrégat, doivent toujours être incluses.

Voyons comment nous allons utiliser les fonctions d'agrégation avec la clause GROUP BY avec notre exemple de tableau ci-dessous.

Fonctions d'agrégation dans SQL et leur utilisation

Essayons d'abord d'exécuter une commande sans utiliser la clause GROUP BY pour voir la différence. Trouvons le montant total de SaleAmount dans la colonne ProductName . Notre commande devrait ressembler à l'image ci-dessous.

Fonctions d'agrégation dans SQL et leur utilisation

Comme vous l'avez remarqué, la commande est similaire aux exemples précédents que nous avons mentionnés au début de ce didacticiel. Une fois que nous avons exécuté cette commande, elle calculera simplement le montant total sous la colonne SaleAmount , qui sera 28 .

Maintenant, prenons un autre exemple utilisant la clause GROUP BY

Fonctions d'agrégation dans SQL et leur utilisation

Puisque nous utilisons la clause GROUP BY , nous pouvons désormais utiliser plusieurs colonnes. Cette fois, nous voulons voir le montant total de la vente par catégorie.

La clause GROUP BY s'assurera que le résultat affichera une somme des ventes pour chaque catégorie et si elle est exécutée, le résultat sera l'image ci-dessous.

Dans cet exemple, il est important d'utiliser la clause GROUP BY car sinon, une erreur se produira. Cela est dû au fait que la catégorie n'est pas contenue dans une clause GROUP BY ou une fonction d'agrégation.

Fonctions d'agrégation dans SQL et leur utilisation

Prenons le même exemple, mais cette fois, nous obtiendrons également le montant total de SaleAmount par ProductName . Notre commande devrait ressembler à l'image ci-dessous.

Fonctions d'agrégation dans SQL et leur utilisation

Une fois que nous exécutons notre commande, le résultat affichera la somme des ventes par Category et par ProductName .

Fonctions d'agrégation dans SQL et leur utilisation

N'oubliez pas que vous ne pouvez pas utiliser ou accéder à plusieurs colonnes sans utiliser la clause GROUP BY car si vous le faites, cela provoquera une erreur une fois que vous aurez exécuté votre commande.

Fonctions d'agrégation dans SQL Server Management Studio (SSMS)

Voyons maintenant comment utiliser les fonctions d'agrégation dans SQL Server Management Studio . Nous utiliserons le tableau ci-dessous dans nos exemples.

Fonctions d'agrégation dans SQL et leur utilisation

Nous avons 31 465 lignes de données dans notre table SalesOrderHeader . Pour notre premier exemple, nous allons montrer comment nous pouvons utiliser la fonction COUNT en comptant les lignes de notre table. Notre commande devrait ressembler à l'image ci-dessous.

Fonctions d'agrégation dans SQL et leur utilisation

Nous avons compté avec succès toutes les lignes qu'il y a dans notre SalesOrderHeader et l'avons nommé countofrows . Une fois que nous exécutons cette commande, nous aurons un résultat de 31 465 lignes .

Revenons à notre jeu de données. Tout en utilisant la même fonction d'agrégation , comptons le nombre de SalesPersonID dans notre table. Notre commande devrait être :

Fonctions d'agrégation dans SQL et leur utilisation

Lorsque nous exécutons notre commande, elle récupère spécifiquement les données sous la colonne SalesPersonsID et nous donne une colonne nommée countofsalespersons avec le résultat 3806 .

Fonctions d'agrégation dans SQL et leur utilisation

Utilisation de fonctions d'agrégation dans une seule requête

Passons à autre chose, discutons de la façon dont nous pouvons utiliser plusieurs fonctions d'agrégation dans une seule requête. Nous utiliserons les fonctions SUM , AVG et MAX pour agréger nos colonnes TotalDue et TaxAmt

Fonctions d'agrégation dans SQL et leur utilisation

Nous pouvons utiliser plusieurs fonctions d'agrégation dans une seule requête en plaçant une virgule après chaque fonction. 

Fonctions d'agrégation dans SQL et leur utilisation

Une fois que nous avons exécuté cette commande, notre résultat devrait ressembler à l'image ci-dessous. 

Fonctions d'agrégation dans SQL et leur utilisation

Maintenant, nous pouvons voir les différentes colonnes avec leur valeur respective en utilisant plusieurs fonctions d'agrégation

Essayons d'exécuter une commande où elle provoquera une erreur pour souligner pourquoi nous devrions utiliser la clause GROUP BY lors de la sélection des colonnes. Nous utiliserons le même exemple en utilisant plusieurs fonctions mais cette fois nous sélectionnerons CustomerID .

Fonctions d'agrégation dans SQL et leur utilisation

Comme vous pouvez le voir, il indique que la commande n'est pas valide car CustomerID n'est contenu ni dans la fonction d'agrégat ni dans la clause GROUP BY .

Exemple de scénario avec la clause GROUP BY

Pour notre prochain exemple, corrigeons notre erreur en fournissant la clause GROUP BY dans notre commande.

Fonctions d'agrégation dans SQL et leur utilisation

Nous venons d'ajouter CustomerID dans une clause GROUP BY et nous pouvons maintenant voir la somme, la moyenne et la valeur maximale de nos TotalDue et TaxAmt par CustomerID. Nous pouvons également voir que nous avons un total de 19119 lignes .

Prenons notre dernier exemple en expliquant pourquoi il est important pour nous de nous assurer que les colonnes et les expressions non agrégées sont incluses dans la clause GROUP BY .

Dans notre table SalesOrderHeader , nous avons la colonne OrderDate . Disons que nous voulons obtenir la somme de TotalDue par année. Si nous n'indiquons pas toutes les colonnes et expressions non agrégées, nous devons utiliser la commande de l'image ci-dessous.

Fonctions d'agrégation dans SQL et leur utilisation

Remarquez comment nous pouvons obtenir un résultat plutôt qu'une erreur. Cependant, nous avons plusieurs rapports pour la même année alors que notre objectif est de résumer les rapports en une valeur spécifique par an.

Pour corriger notre erreur, nous devons nous assurer que nous incluons également l'expression dans notre clause GROUP BY . Notre nouvelle commande devrait être :

Fonctions d'agrégation dans SQL et leur utilisation

Après avoir exécuté la commande, nous pouvons voir que nous avons réussi à obtenir la somme de OrderDate par an. 

Clause HAVING dans SQL Aggregate Functions
Procédures stockées dans SQL | Une vue d'ensemble
des moyens efficaces d'utiliser la fonction GROUPBY dans LuckyTemplates

Conclusion

Pour résumer, vous avez appris certaines des connaissances de base concernant l'utilisation des fonctions d'agrégation dans SQL. Les fonctions d'agrégation peuvent être idéales lorsque vous travaillez avec des rapports ou des ensembles de données volumineux, car elles offrent un confort aux analystes lors de l'analyse et de la synthèse des données. 

J'espère que ce didacticiel peut vous aider à mieux vous entraîner à utiliser différentes fonctions d'agrégation dans SQL. Si vous souhaitez en savoir plus sur ce sujet et d'autres contenus connexes, vous pouvez certainement consulter la liste des liens pertinents ci-dessous.

Tous mes vœux,

Hafiz

Leave a Comment

Gestion des erreurs dans Power Automate via le branchement parallèle

Gestion des erreurs dans Power Automate via le branchement parallèle

Découvrez l

Comparaison de tables dans Power Query | Tutoriel LuckyTemplates

Comparaison de tables dans Power Query | Tutoriel LuckyTemplates

Découvrez comment comparer facilement des tables dans Power Query pour signaler les différences et optimiser vos analyses de données.

Colonne fractionnée LuckyTemplates par délimiteurs dans DAX

Colonne fractionnée LuckyTemplates par délimiteurs dans DAX

Dans ce blog, vous découvrirez comment diviser les colonnes dans LuckyTemplates par délimiteurs à l'aide de DAX, une méthode efficace pour gérer des modèles de données complexes.

SELECTEDVALUE DAX Exemple - Sélection de trancheuse de récolte

SELECTEDVALUE DAX Exemple - Sélection de trancheuse de récolte

Découvrez comment récolter une valeur avec SELECTEDVALUE DAX pour des calculs dynamiques dans LuckyTemplates.

Calculer la marge en pourcentage dans LuckyTemplates à laide de DAX

Calculer la marge en pourcentage dans LuckyTemplates à laide de DAX

Calculez la marge en pourcentage à l

Modifier les formats de date à laide de léditeur Power Query

Modifier les formats de date à laide de léditeur Power Query

Dans ce didacticiel, nous allons explorer une méthode rapide pour convertir du texte en formats de date à l

Enregistrer la pièce jointe dun e-mail sur SharePoint avec Power Automate

Enregistrer la pièce jointe dun e-mail sur SharePoint avec Power Automate

Dans ce blog, vous apprendrez à enregistrer automatiquement la pièce jointe d

Comment adapter les cellules Excel au texte : 4 solutions simples

Comment adapter les cellules Excel au texte : 4 solutions simples

Découvrez comment adapter les cellules Excel au texte avec ces 4 solutions simples pour améliorer la présentation de vos données.

Générateur de rapports SSRS : formater les en-têtes dans un rapport paginé

Générateur de rapports SSRS : formater les en-têtes dans un rapport paginé

Dans ce didacticiel SSRS Report Builder, découvrez comment utiliser le générateur d

Thème de couleur dans les rapports LuckyTemplates - Conseils et techniques

Thème de couleur dans les rapports LuckyTemplates - Conseils et techniques

Découvrez les outils pour créer un thème de couleur efficace pour vos rapports LuckyTemplates et améliorer leur apparence.