Funkcje agregujące (SqlClient dla programu Entity Framework)
Dostawca danych .NET Framework dla SQL Server (SqlClient) udostępnia funkcje agregujące. Funkcje agregujące wykonują obliczenia na zestawie wartości wejściowych i zwracają wartość. Te funkcje znajdują się w przestrzeni nazw SqlServer, która jest dostępna w przypadku korzystania z programu SqlClient. Właściwość przestrzeni nazw dostawcy umożliwia platformie Entity Framework wykrycie, który prefiks jest używany przez tego dostawcę dla określonych konstrukcji, takich jak typy i funkcje.
Poniżej przedstawiono funkcje agregujące SqlClient.
AVG(expression)
Zwraca średnią wartości w kolekcji. Wartości null są ignorowane.
Argumenty
An Int32
, Int64
, Double
i Decimal
.
Wartość zwracana
Typ .expression
Przykład
SELECT VALUE SqlServer.AVG(p.ListPrice)
FROM AdventureWorksEntities.Products AS p
CHECKSUM_AGG(kolekcja)
Zwraca sumę kontrolną wartości w kolekcji. Wartości null są ignorowane.
Argumenty
Kolekcja(Int32
).
Wartość zwracana
An Int32
.
Przykład
SELECT VALUE SqlServer.Checksum_Agg(cast(product.ListPrice AS Int32))
FROM AdventureWorksEntities.Products AS product
WHERE product.ListPrice > cast(@price AS Decimal)
COUNT(expression)
Zwraca liczbę elementów w kolekcji jako .Int32
Argumenty
Kolekcja<T>, gdzie T jest jednym z następujących typów:
Boolean
Double
DateTime
DateTimeOffset
Time
String
Binary
-
Guid
(nie jest zwracany w SQL Server 2000 r.)
Wartość zwracana
An Int32
.
Przykład
ANYELEMENT(SELECT VALUE SqlServer.COUNT(product.ProductID)
FROM AdventureWorksEntities.Products AS product
WHERE SqlServer.CEILING(product.ListPrice) ==
SqlServer.FLOOR(product.ListPrice))
COUNT_BIG(wyrażenie)
Zwraca liczbę elementów w kolekcji jako bigint
.
Argumenty
Kolekcja (T), gdzie T jest jednym z następujących typów:
Boolean
Double
DateTime
DateTimeOffset
Time
String
Binary
-
Guid
(nie jest zwracany w SQL Server 2000 r.)
Wartość zwracana
An Int64
.
Przykład
ANYELEMENT(SELECT VALUE SqlServer.COUNT_BIG(product.ProductID)
FROM AdventureWorksEntities.Products AS product
WHERE SqlServer.CEILING(product.ListPrice) ==
SqlServer.FLOOR(product.ListPrice))
MAX(expression)
Zwraca maksymalną wartość kolekcji.
Argumenty
Kolekcja (T), gdzie T jest jednym z następujących typów:
Boolean
Double
DateTime
DateTimeOffset
Time
String
Binary
Wartość zwracana
Typ .expression
Przykład
SELECT VALUE SqlServer.MAX(p.ListPrice)
FROM AdventureWorksEntities.Products AS p
MIN(wyrażenie)
Zwraca wartość minimalną w kolekcji.
Argumenty
Kolekcja (T), gdzie T jest jednym z następujących typów:
Boolean
Double
DateTime
DateTimeOffset
Time
String
Binary
Wartość zwracana
Typ .expression
Przykład
SELECT VALUE SqlServer.MIN(p.ListPrice)
FROM AdventureWorksEntities.Products AS p
STDEV(wyrażenie)
Zwraca statystyczne odchylenie standardowe wszystkich wartości w określonym wyrażeniu.
Argumenty
Kolekcja(Double
).
Wartość zwracana
Klasa Double
.
Przykład
SELECT VALUE SqlServer.STDEV(product.ListPrice)
FROM AdventureWorksEntities.Products AS product
WHERE product.ListPrice > cast(@price AS Decimal)
STDEVP(wyrażenie)
Zwraca statystyczne odchylenie standardowe dla populacji dla wszystkich wartości w określonym wyrażeniu.
Argumenty
Kolekcja(Double
).
Wartość zwracana
Klasa Double
.
Przykład
SELECT VALUE SqlServer.STDEVP(product.ListPrice)
FROM AdventureWorksEntities.Products AS product
WHERE product.ListPrice > cast(@price AS Decimal)
SUM(expression)
Zwraca sumę wszystkich wartości w kolekcji.
Argumenty
A Collection(T), gdzie T jest jednym z następujących typów: Int32
, Int64
, Double
, Decimal
.
Wartość zwracana
Typ .expression
Przykład
SELECT VALUE SqlServer.SUM(p.ListPrice)
FROM AdventureWorksEntities.Products AS p
VAR(expression)
Zwraca statystyczną wariancję wszystkich wartości w określonym wyrażeniu.
Argumenty
Kolekcja(Double
).
Wartość zwracana
Klasa Double
.
Przykład
SELECT VALUE SqlServer.VAR(product.ListPrice)
FROM AdventureWorksEntities.Products AS product
WHERE product.ListPrice > cast(@price AS Decimal)
VARP(wyrażenie)
Zwraca wariancję statystyczną dla populacji dla wszystkich wartości w określonym wyrażeniu.
Argumenty
Kolekcja(Double
).
Wartość zwracana
Klasa Double
.
Przykład
SELECT VALUE SqlServer.VARP(product.ListPrice)
FROM AdventureWorksEntities.Products AS product
WHERE product.ListPrice > cast(@price AS Decimal)