Condividi tramite


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