Operacje agregacji (Visual Basic)
Operacja agregacji oblicza pojedynczą wartość z kolekcji wartości. Przykładem operacji agregacji jest obliczanie średniej dziennej temperatury z wartości miesięcznej dziennej temperatury.
Poniższa ilustracja przedstawia wyniki dwóch różnych operacji agregacji w sekwencji liczb. Pierwsza operacja sumuje liczby. Druga operacja zwraca maksymalną wartość w sekwencji.
Standardowe metody operatorów zapytań, które wykonują operacje agregacji, są wymienione w poniższej sekcji.
Metody
Nazwa metody | opis | Składnia wyrażeń zapytań języka Visual Basic | Więcej informacji |
---|---|---|---|
Agregacja | Wykonuje niestandardową operację agregacji na wartościach kolekcji. | Nie dotyczy. | Enumerable.Aggregate Queryable.Aggregate |
Średnia | Oblicza średnią wartość kolekcji wartości. | Aggregate … In … Into Average() |
Enumerable.Average Queryable.Average |
Count | Zlicza elementy w kolekcji, opcjonalnie tylko te elementy, które spełniają funkcję predykatu. | Aggregate … In … Into Count() |
Enumerable.Count Queryable.Count |
Longcount | Zlicza elementy w dużej kolekcji, opcjonalnie tylko te elementy, które spełniają funkcję predykatu. | Aggregate … In … Into LongCount() |
Enumerable.LongCount Queryable.LongCount |
Max lub MaxBy | Określa maksymalną wartość w kolekcji. | Aggregate … In … Into Max() |
Enumerable.Max Enumerable.MaxBy Queryable.Max Queryable.MaxBy |
Min lub MinBy | Określa minimalną wartość w kolekcji. | Aggregate … In … Into Min() |
Enumerable.Min Enumerable.MinBy Queryable.Min Queryable.MinBy |
Sum | Oblicza sumę wartości w kolekcji. | Aggregate … In … Into Sum() |
Enumerable.Sum Queryable.Sum |
Przykłady składni wyrażeń zapytania
Średnia
W poniższym przykładzie kodu użyto Aggregate Into Average
klauzuli w visual basic, aby obliczyć średnią temperaturę w tablicy liczb reprezentujących temperatury.
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
Poniższy przykład kodu używa klauzuli Aggregate Into Count
w Visual Basic, aby zliczyć liczbę wartości w tablicy, które są większe lub równe 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
Poniższy przykład kodu używa klauzuli , Aggregate Into LongCount
aby zliczyć liczbę wartości w tablicy.
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
Maksimum
Poniższy przykład kodu używa klauzuli , Aggregate Into Max
aby obliczyć maksymalną temperaturę w tablicy liczb reprezentujących temperatury.
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
Minimum
Poniższy przykład kodu używa klauzuli , Aggregate Into Min
aby obliczyć minimalną temperaturę w tablicy liczb reprezentujących temperatury.
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
Poniższy przykład kodu używa klauzuli , Aggregate Into Sum
aby obliczyć łączną kwotę wydatków z tablicy wartości reprezentujących wydatki.
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
Zobacz też
- System.Linq
- Omówienie standardowych operatorów zapytań (Visual Basic)
- Aggregate, klauzula
- Porady: obliczanie wartości kolumn w pliku tekstowym CSV (LINQ) (Visual Basic)
- Instrukcje: liczba, suma lub średnie dane
- Instrukcje: znajdowanie wartości minimalnej lub maksymalnej w wyniku zapytania
- Porady: wykonywanie zapytań o największy plik lub pliki w drzewie katalogów (LINQ) (Visual Basic)
- Porady: wykonywanie zapytań o łączną liczbę bajtów w zestawie folderów (LINQ) (Visual Basic)