Opérations d’agrégation (Visual Basic)
Une opération d’agrégation calcule une valeur unique à partir d’une collection de valeurs. Par exemple, une opération d'agrégation peut être le calcul de la température quotidienne moyenne à partir des valeurs de température quotidiennes relevées sur un mois.
L’illustration suivante montre les résultats de deux opérations d’agrégation différentes sur une séquence de nombres. La première opération additionne les nombres. La deuxième opération retourne la valeur maximale dans la séquence.
Les méthodes d’opérateurs de requête standard qui effectuent des opérations d’agrégation sont répertoriées dans la section suivante.
Méthodes
Nom de la méthode | Description | Syntaxe de l'expression de requête en Visual Basic | Informations complémentaires |
---|---|---|---|
Agrégat | Effectue une opération d’agrégation personnalisée sur les valeurs d’une collection. | Non applicable. | Enumerable.Aggregate Queryable.Aggregate |
Moyenne | Calcule la valeur moyenne d’une collection de valeurs. | Aggregate … In … Into Average() |
Enumerable.Average Queryable.Average |
Count | Compte tous les éléments d’une collection, ou uniquement les éléments basés sur une fonction de prédicat. | Aggregate … In … Into Count() |
Enumerable.Count Queryable.Count |
LongCount | Compte tous les éléments d’une grande collection, ou uniquement les éléments basés sur une fonction de prédicat. | Aggregate … In … Into LongCount() |
Enumerable.LongCount Queryable.LongCount |
Max ou MaxBy | Détermine la valeur maximale dans une collection. | Aggregate … In … Into Max() |
Enumerable.Max Enumerable.MaxBy Queryable.Max Queryable.MaxBy |
Min ou MinBy | Détermine la valeur minimale dans une collection. | Aggregate … In … Into Min() |
Enumerable.Min Enumerable.MinBy Queryable.Min Queryable.MinBy |
Sum | Calcule la somme des valeurs d’une collection. | Aggregate … In … Into Sum() |
Enumerable.Sum Queryable.Sum |
Exemples de syntaxe d'expression de requête
Moyenne
L’exemple du code suivant utilise la clause Aggregate Into Average
dans Visual Basic pour calculer la température moyenne dans un tableau de nombres représentant les températures.
Dim temperatures() As Double = {72.0, 81.5, 69.3, 88.6, 80.0, 68.5}
Dim avg = Aggregate temp In temperatures Into Average()
' Display the result.
MsgBox(avg)
' This code produces the following output:
' 76.65
Count
L’exemple de code suivant utilise la clause Aggregate Into Count
dans Visual Basic pour compter le nombre de valeurs d’un tableau supérieures ou égales à 80.
Dim temperatures() As Double = {72.0, 81.5, 69.3, 88.6, 80.0, 68.5}
Dim highTemps As Integer = Aggregate temp In temperatures Into Count(temp >= 80)
' Display the result.
MsgBox(highTemps)
' This code produces the following output:
' 3
LongCount
L’exemple de code suivant utilise la clause Aggregate Into LongCount
pour compter le nombre de valeurs dans un tableau.
Dim temperatures() As Double = {72.0, 81.5, 69.3, 88.6, 80.0, 68.5}
Dim numTemps As Long = Aggregate temp In temperatures Into LongCount()
' Display the result.
MsgBox(numTemps)
' This code produces the following output:
' 6
Max
L’exemple du code suivant utilise la clause Aggregate Into Max
pour calculer la température maximale dans un tableau de nombres représentant les températures.
Dim temperatures() As Double = {72.0, 81.5, 69.3, 88.6, 80.0, 68.5}
Dim maxTemp = Aggregate temp In temperatures Into Max()
' Display the result.
MsgBox(maxTemp)
' This code produces the following output:
' 88.6
Min
L’exemple du code suivant utilise la clause Aggregate Into Min
pour calculer la température minimale dans un tableau de nombres représentant les températures.
Dim temperatures() As Double = {72.0, 81.5, 69.3, 88.6, 80.0, 68.5}
Dim minTemp = Aggregate temp In temperatures Into Min()
' Display the result.
MsgBox(minTemp)
' This code produces the following output:
' 68.5
Sum
L’exemple du code suivant utilise la clause Aggregate Into Sum
pour calculer le montant total des dépenses à partir d’un tableau de valeurs représentant les dépenses.
Dim expenses() As Double = {560.0, 300.0, 1080.5, 29.95, 64.75, 200.0}
Dim totalExpense = Aggregate expense In expenses Into Sum()
' Display the result.
MsgBox(totalExpense)
' This code produces the following output:
' 2235.2
Voir aussi
- System.Linq
- Vue d’ensemble des opérateurs de requête standard (Visual Basic)
- Aggregate (clause)
- Guide pratique : calculer des valeurs de colonnes dans un fichier texte CSV (LINQ) (Visual Basic)
- Guide pratique : compter, additionner ou faire la moyenne de données
- Guide pratique : rechercher la valeur minimale ou maximale dans un résultat de requête
- Comment : interroger les fichiers les plus volumineux dans une arborescence de répertoires (LINQ) (Visual Basic)
- Guide pratique : demander le nombre total d'octets dans un ensemble de dossiers (LINQ) (Visual Basic)