Operazioni di aggregazione (Visual Basic)
Un'operazione di aggregazione calcola un singolo valore da una raccolta di valori. Un esempio di operazione di aggregazione è rappresentato dal calcolo della temperatura media giornaliera dai valori della temperatura giornaliera di un mese.
La figura seguente illustra i risultati di due operazioni di aggregazione diverse in una sequenza di numeri. La prima operazione somma i numeri. La seconda operazione restituisce il valore massimo nella sequenza.
La sezione seguente elenca i metodi degli operatori di query standard che eseguono operazioni di aggregazione.
Metodi
Nome metodo | Descrizione | Sintassi delle espressioni di query di Visual Basic | Ulteriori informazioni |
---|---|---|---|
Aggregato | Esegue un'operazione di aggregazione personalizzata sui valori di una raccolta. | Non applicabile. | Enumerable.Aggregate Queryable.Aggregate |
Media | Calcola il valore medio di una raccolta di valori. | Aggregate … In … Into Average() |
Enumerable.Average Queryable.Average |
Conteggio | Conta gli elementi in una raccolta e, facoltativamente, solo gli elementi che soddisfano una funzione di predicato. | Aggregate … In … Into Count() |
Enumerable.Count Queryable.Count |
LongCount | Conta gli elementi in una raccolta di grandi dimensioni e, facoltativamente, solo gli elementi che soddisfano una funzione di predicato. | Aggregate … In … Into LongCount() |
Enumerable.LongCount Queryable.LongCount |
Max o MaxBy | Determina il valore massimo in una raccolta. | Aggregate … In … Into Max() |
Enumerable.Max Enumerable.MaxBy Queryable.Max Queryable.MaxBy |
Min o MinBy | Determina il valore minimo in una raccolta. | Aggregate … In … Into Min() |
Enumerable.Min Enumerable.MinBy Queryable.Min Queryable.MinBy |
Sum | Calcola la somma dei valori in una raccolta. | Aggregate … In … Into Sum() |
Enumerable.Sum Queryable.Sum |
Esempi di sintassi delle espressioni di query
Media
Nell'esempio di codice seguente viene utilizzata la clausola Aggregate Into Average
in Visual Basic per calcolare la temperatura media in una matrice di numeri che rappresentano le temperature.
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
Conteggio
Nell'esempio di codice seguente viene utilizzata la clausola Aggregate Into Count
in Visual Basic per contare il numero di valori in una matrice maggiore o uguale a 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
Nell'esempio di codice seguente viene utilizzata la clausola Aggregate Into LongCount
per contare il numero di valori in una matrice.
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
Nell'esempio di codice seguente viene usata la clausola Aggregate Into Max
per calcolare la temperatura massima in una matrice di numeri che rappresentano le temperature.
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
Nell'esempio di codice seguente viene utilizzata la clausola Aggregate Into Min
per calcolare la temperatura minima in una matrice di numeri che rappresentano le temperature.
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
Nell'esempio di codice seguente viene usata la clausola Aggregate Into Sum
per calcolare l'importo totale delle spese da una matrice di valori che rappresentano le spese.
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
Vedi anche
- System.Linq
- Panoramica degli operatori query standard (Visual Basic)
- Clausola Aggregate
- Procedura: calcolare i valori di colonna in un file di testo CSV (LINQ) (Visual Basic)
- Procedura: Conteggio, somma o media di dati
- Procedura: Trovare il valore minimo o massimo in un risultato di query
- Procedura: eseguire una query per trovare il file o i file più grandi in un albero di directory (LINQ) (Visual Basic)
- Procedura: eseguire una query per trovare il numero totale di byte in un set di cartelle (LINQ) (Visual Basic)