Sammansättningsåtgärder (Visual Basic)
En aggregeringsåtgärd beräknar ett enda värde från en samling värden. Ett exempel på en aggregeringsåtgärd är att beräkna den genomsnittliga dagliga temperaturen från en månads värden för den dagliga temperaturen.
Följande bild visar resultatet av två olika aggregeringsåtgärder på en sekvens med tal. Den första åtgärden summerar talen. Den andra åtgärden returnerar det maximala värdet i sekvensen.
Standardmetoderna för frågeoperatorer som utför aggregeringsåtgärder visas i följande avsnitt.
Metoder
Metodnamn | beskrivning | Syntax för Visual Basic-frågeuttryck | Mer information |
---|---|---|---|
Aggregera | Utför en anpassad aggregeringsåtgärd på värdena för en samling. | Ej tillämpbart. | Enumerable.Aggregate Queryable.Aggregate |
Genomsnitt | Beräknar det genomsnittliga värdet för en samling värden. | Aggregate … In … Into Average() |
Enumerable.Average Queryable.Average |
Antal | Räknar elementen i en samling, eventuellt endast de element som uppfyller en predikatfunktion. | Aggregate … In … Into Count() |
Enumerable.Count Queryable.Count |
LongCount | Räknar elementen i en stor samling, eventuellt endast de element som uppfyller en predikatfunktion. | Aggregate … In … Into LongCount() |
Enumerable.LongCount Queryable.LongCount |
Max eller MaxBy | Avgör det maximala värdet i en samling. | Aggregate … In … Into Max() |
Enumerable.Max Enumerable.MaxBy Queryable.Max Queryable.MaxBy |
Min eller MinBy | Avgör det lägsta värdet i en samling. | Aggregate … In … Into Min() |
Enumerable.Min Enumerable.MinBy Queryable.Min Queryable.MinBy |
Sum | Beräknar summan av värdena i en samling. | Aggregate … In … Into Sum() |
Enumerable.Sum Queryable.Sum |
Exempel på frågeuttryckssyntax
Genomsnitt
I följande kodexempel används Aggregate Into Average
-satsen i Visual Basic för att beräkna medeltemperaturen i en matris med tal som representerar temperaturer.
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
Antal
I följande kodexempel används Aggregate Into Count
-satsen i Visual Basic för att räkna antalet värden i en matris som är större än eller lika med 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
I följande kodexempel används Aggregate Into LongCount
-satsen för att räkna antalet värden i en matris.
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
I följande kodexempel används Aggregate Into Max
-satsen för att beräkna den maximala temperaturen i en matris med tal som representerar temperaturer.
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
I följande kodexempel används Aggregate Into Min
-satsen för att beräkna minimitemperaturen i en matris med tal som representerar temperaturer.
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
I följande kodexempel används Aggregate Into Sum
-satsen för att beräkna det totala utgiftsbeloppet från en matris med värden som representerar utgifter.
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
Se även
- System.Linq
- Översikt över vanliga frågeoperatorer (Visual Basic)
- Aggregerad sats
- Anvisningar: Beräkna kolumnvärden i en CSV-textfil (LINQ) (Visual Basic)
- Anvisningar: Antal, summa eller genomsnittliga data
- Anvisningar: Hitta lägsta eller högsta värde i ett frågeresultat
- Anvisningar: Fråga efter den största filen eller filerna i ett katalogträd (LINQ) (Visual Basic)
- Anvisningar: Fråga efter totalt antal byte i en uppsättning mappar (LINQ) (Visual Basic)