Funzioni di aggregazione (Entity SQL)

Il provider di dati .NET Framework per SQL Server (SqlClient) fornisce funzioni di aggregazione che eseguono calcoli su un set di valori di input e restituiscono un valore. Tali funzioni si trovano nello spazio dei nomi SqlServer, disponibile quando si utilizza SqlClient. Una proprietà dello spazio dei nomi del provider consente a Entity Framework di individuare il prefisso utilizzato dal provider per costrutti specifici, ad esempio tipi e funzioni.

Nella tabella seguente sono riportate le funzioni di aggregazione di SqlClient:

Funzione Descrizione

AVG( expression )

Restituisce la media dei valori di una raccolta.

I valori Null vengono ignorati.

Arguments

Valore Int32, Int64, Double e Decimal.

Valore restituito

Tipo di expression.

Esempio

SELECT VALUE SqlServer.AVG(p.ListPrice) FROM 
AdventureWorksEntities.Products as p 

CHECKSUM_AGG( collection )

Restituisce il checksum dei valori in una raccolta.

I valori Null vengono ignorati.

Arguments

Raccolta (Int32).

Valore restituito

Valore Int32.

Esempio

SELECT VALUE SqlServer.Checksum_Agg(cast(product.ListPrice as Int32)) 
FROM AdventureWorksEntities.Products AS product 
WHERE product.ListPrice > cast(@price as Decimal) 

COUNT( expression )

Restituisce il numero di elementi in una raccolta come un valore Int32.

Arguments

Raccolta (T), dove T è uno dei tipi seguenti:

Valore Guid (non restituito in SQL Server 2000),

Boolean, Double, DateTime, DateTimeOffset, Time, String o Binary.

Valore restituito

Valore Int32.

Esempio

ANYELEMENT(SELECT VALUE SqlServer.COUNT(product.ProductID) 
FROM AdventureWorksEntities.Products AS product 
WHERE SqlServer.CEILING(product.ListPrice) == 
SqlServer.FLOOR(product.ListPrice)) 

COUNT_BIG( expression )

Restituisce il numero di elementi in una raccolta come un valore bigint.

Arguments

Raccolta (T), dove T è uno dei tipi seguenti:

Valore Guid (non restituito in SQL Server 2000), Boolean, Double, DateTime, DateTimeOffset, Time, String o Binary.

Valore restituito

Valore Int64.

Esempio

ANYELEMENT(SELECT VALUE SqlServer.COUNT_BIG(product.ProductID) 
FROM AdventureWorksEntities.Products AS product 
WHERE SqlServer.CEILING(product.ListPrice) == 
SqlServer.FLOOR(product.ListPrice)) 

MAX( expression )

Restituisce il valore massimo nella raccolta.

Argomenti

Raccolta (T), dove T è uno dei tipi seguenti: Byte, Int16, Int32, Int64, Byte, Single, Double, Decimal, DateTime, DateTimeOffset, Time, String, Binary.

Valore restituito

Tipo di expression.

Esempio

SELECT VALUE SqlServer.MAX(p.ListPrice) 
FROM AdventureWorksEntities.Products as p

MIN( expression )

Restituisce il valore minimo in una raccolta.

Argomenti

Raccolta (T), dove T è uno dei tipi seguenti: Byte, Int16, Int32, Int64, Byte, Single, Double, Decimal, DateTime, DateTimeOffset, Time, String,

Binary.

Valore restituito

Tipo di expression.

Esempio

SELECT VALUE SqlServer.MIN(p.ListPrice) 
FROM AdventureWorksEntities.Products as p

STDEV( expression )

Restituisce la deviazione statistica standard di tutti i valori nell'espressione specificata.

Arguments

Raccolta (Double).

Valore restituito

Tipo Double.

Esempio

SELECT VALUE SqlServer.STDEV(product.ListPrice) 
FROM AdventureWorksEntities.Products AS product 
WHERE product.ListPrice > cast(@price as Decimal) 

STDEVP( expression )

Restituisce la deviazione statistica standard relativa alla popolazione per tutti i valori dell'espressione specificata.

Arguments

Raccolta (Double).

Valore restituito

Tipo Double.

Esempio

SELECT VALUE SqlServer.STDEVP(product.ListPrice) 
FROM AdventureWorksEntities.Products AS product 
WHERE product.ListPrice > cast(@price as Decimal) 

SUM( expression )

Restituisce la somma di tutti i valori della raccolta.

Arguments

Raccolta (T), dove T è uno dei tipi seguenti: Int32, Int64, Double, Decimal.

Valore restituito

Tipo di expression.

Esempio

SELECT VALUE SqlServer.SUM(p.ListPrice) 
FROM AdventureWorksEntities.Products as p

VAR( expression )

Restituisce la varianza statistica di tutti i valori nell'espressione specificata.

Arguments

Raccolta (Double).

Valore restituito

Tipo Double.

Esempio

SELECT VALUE SqlServer.VAR(product.ListPrice) 
FROM AdventureWorksEntities.Products AS product 
WHERE product.ListPrice > cast(@price as Decimal) 

VARP( expression )

Restituisce la varianza statistica della popolazione per tutti i valori nell'espressione specificata.

Arguments

Raccolta (Double).

Valore restituito

Tipo Double.

Esempio

SELECT VALUE SqlServer.VARP(product.ListPrice) 
FROM AdventureWorksEntities.Products AS product 
WHERE product.ListPrice > cast(@price as Decimal) 

Per ulteriori informazioni sulle funzioni di aggregazione supportate da SqlClient, vedere la documentazione relativa alla versione di SQL Server specificata nel file manifesto del provider SqlClient:

SQL Server 2000 SQL Server 2005 SQL Server 2008

Funzioni di aggregazione (Transact-SQL)

Funzioni di aggregazione (Transact-SQL)

Funzioni di aggregazione (Transact-SQL)

Vedere anche

Riferimento

Funzioni canoniche di aggregazione (Entity SQL)

Concetti

Linguaggio Entity SQL