Compartir a través de


Operaciones de agregación (Visual Basic)

Una operación de agregación calcula un único valor de una colección de valores. Un ejemplo de una operación de agregación es calcular la temperatura media diaria a partir de los valores de temperatura diaria de un mes.

En la ilustración siguiente se muestran los resultados de dos operaciones de agregación diferentes en una secuencia de números. La primera operación suma los números. La segunda operación devuelve el valor máximo de la secuencia.

Ilustración que muestra las operaciones de agregación de LINQ.

Los métodos del operador de consulta estándar que realizan operaciones de agregación se enumeran en la sección siguiente.

Métodos

Nombre del método Descripción Sintaxis de expresión de consulta de Visual Basic Más información
Agregado Realiza una operación de agregación personalizada en los valores de una colección. No aplicable. Enumerable.Aggregate

Queryable.Aggregate
Promedio Calcula el valor medio de una colección de valores. Aggregate … In … Into Average() Enumerable.Average

Queryable.Average
Contar Cuenta los elementos de una colección, opcionalmente solo los elementos que satisfacen una función de predicado. Aggregate … In … Into Count() Enumerable.Count

Queryable.Count
LongCount Cuenta los elementos de una colección grande, opcionalmente solo aquellos que satisfacen una función de predicado. Aggregate … In … Into LongCount() Enumerable.LongCount

Queryable.LongCount
Max o MaxBy Determina el valor máximo de una colección. Aggregate … In … Into Max() Enumerable.Max
Enumerable.MaxBy
Queryable.Max
Queryable.MaxBy
Min o MinBy Determina el valor mínimo de una colección. Aggregate … In … Into Min() Enumerable.Min
Enumerable.MinBy
Queryable.Min
Queryable.MinBy
Suma Calcula la suma de los valores de una colección. Aggregate … In … Into Sum() Enumerable.Sum

Queryable.Sum

Ejemplos de sintaxis de expresiones de consulta

Promedio

En el ejemplo de código siguiente se usa la Aggregate Into Average cláusula de Visual Basic para calcular la temperatura media en una matriz de números que representan las temperaturas.


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

Contar

En el ejemplo de código siguiente se usa la Aggregate Into Count cláusula de Visual Basic para contar el número de valores de una matriz mayor o igual que 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

En el ejemplo de código siguiente se usa la Aggregate Into LongCount cláusula para contar el número de valores de una matriz.


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

Máx.

En el ejemplo de código siguiente se usa la Aggregate Into Max cláusula para calcular la temperatura máxima en una matriz de números que representan las temperaturas.


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

Minuto

En el ejemplo de código siguiente se usa la Aggregate Into Min cláusula para calcular la temperatura mínima en una matriz de números que representan las temperaturas.


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

Suma

En el ejemplo de código siguiente se usa la Aggregate Into Sum cláusula para calcular el importe total de gastos de una matriz de valores que representan los gastos.


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

Consulte también