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.

Illustration that shows LINQ aggregation operations.

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