Avg (MDX)Avg (MDX)

QUESTO ARGOMENTO SI APPLICA A:sìSQL Server (a partire dalla versione 2008)noDatabase SQL di AzurenoAzure SQL Data Warehouse noParallel Data Warehouse THIS TOPIC APPLIES TO:yesSQL Server (starting with 2008)noAzure SQL DatabasenoAzure SQL Data Warehouse noParallel Data Warehouse

Valuta un set e restituisce la media dei valori non vuoti delle celle del set, calcolata sulle misure del set o su una misura specificata.Evaluates a set and returns the average of the non empty values of the cells in the set, averaged over the measures in the set or over a specified measure.

SintassiSyntax


Avg( Set_Expression [ , Numeric_Expression ] )  

ArgomentiArguments

Set_ExpressionSet_Expression
Espressione MDX (Multidimensional Expression) valida che restituisce un set.A valid Multidimensional Expressions (MDX) expression that returns a set

Numeric_expressionNumeric_Expression
Espressione numerica valida che in genere è un'espressione MDX (Multidimensional Expression) di coordinate di celle che restituisce un numero.A valid numeric expression that is typically a Multidimensional Expressions (MDX) expression of cell coordinates that return a number.

OsservazioniRemarks

Se viene specificato un set di tuple vuote o un set vuoto, il Avg funzione restituisce un valore vuoto.If a set of empty tuples or an empty set is specified, the Avg function returns an empty value.

Il Avg funzione calcola la media dei valori non vuoti delle celle nel set specificato calcolando innanzitutto la somma dei valori nelle celle nel set specificato e quindi dividendo la somma calcolata per il conteggio delle celle non vuote nel set specificato.The Avg function calculates the average of the nonempty values of cells in the specified set by first calculating the sum of values across cells in the specified set, and then dividing the calculated sum by the count of nonempty cells in the specified set.

Nota

Analysis ServicesAnalysis Services ignora i valori Null durante il calcolo del valore medio di un set di numeri. ignores nulls when calculating the average value in a set of numbers.

Se un'espressione numerica specifica (in genere una misura) non è specificata, il Avg funzione calcola la media di ogni misura all'interno del contesto di query corrente.If a specific numeric expression (typically a measure) is not specified, the Avg function averages each measure within the current query context. Se viene fornita una misura specifica, il Avg funzione valuta innanzitutto la misura sul set e quindi la funzione calcola la media in base alla misura specificata.If a specific measure is provided, the Avg function first evaluates the measure over the set, and then the function calculates the average based on the specified measure.

Nota

Quando si utilizza il CurrentMember funzione in un'istruzione di membro calcolato, è necessario specificare un'espressione numerica, perché è presente alcuna misura predefinita per la coordinata corrente in un contesto di query.When using the CurrentMember function in a calculated member statement, you must specify a numeric expression because no default measure exists for the current coordinate in such a query context.

Per forzare l'inclusione delle celle vuote, l'applicazione deve utilizzare il CoalesceEmpty di funzione o specificare un valore valido Numeric_Expression che fornisce un valore pari a zero (0) per i valori vuoti.To force the inclusion of empty cells, the application must use the CoalesceEmpty function or specify a valid Numeric_Expression that supplies a value of zero (0) for empty values. Per ulteriori informazioni sulle celle vuote, vedere la documentazione relativa a OLE DB.For more information about empty cells, see the OLE DB documentation.

EsempiExamples

Nell'esempio seguente viene restituita la media di una misura su un set specificato.The following example returns the average for a measure over a specified set. Si noti che la misura specificata può essere la misura predefinita per i membri del set specificato o una misura specificata.Notice that the specified measure can be either the default measure for the members of the specified set or a specified measure.

WITH SET [NW Region] AS

{[Geography].[State-Province].[Washington]

, [Geography].[State-Province].[Oregon]

, [Geography].[State-Province].[Idaho]}

MEMBER [Geography].[Geography].[NW Region Avg] AS

AVG ([NW Region]

--Uncomment the line below to get an average by Reseller Gross Profit Margin

--otherwise the average will be by whatever the default measure is in the cube,

--or whatever measure is specified in the query

--, [Measures].[Reseller Gross Profit Margin]

)

SELECT [Date].[Calendar Year].[Calendar Year].Members ON 0

FROM [Adventure Works]

WHERE ([Geography].[Geography].[NW Region Avg])

L'esempio seguente restituisce la media giornaliera del Measures.[Gross Profit Margin] misura, calcolata sui giorni di ogni mese dell'anno fiscale 2003, dal Adventure Works cubo.The following example returns the daily average of the Measures.[Gross Profit Margin] measure, calculated across the days of each month in the 2003 fiscal year, from the Adventure Works cube. Il Avg funzione calcola la Media dal set di giorni in cui sono contenuti in ogni mese del [Ship Date].[Fiscal Time] gerarchia.The Avg function calculates the average from the set of days that are contained in each month of the [Ship Date].[Fiscal Time] hierarchy. La prima e la seconda versione del calcolo sono esemplificative del comportamento predefinito della funzione Avg relativo rispettivamente all'esclusione e all'inclusione nella media dei giorni in cui non sono state registrate vendite.The first version of the calculation shows the default behavior of Avg in excluding days that did not record any sales from the average, the second version shows how to include days with no sales in the average.

WITH MEMBER Measures.[Avg Gross Profit Margin] AS

Avg(

Descendants(

[Ship Date].[Fiscal].CurrentMember,

[Ship Date].[Fiscal].[Date]

),

Measures.[Gross Profit Margin]

), format_String='percent'

MEMBER Measures.[Avg Gross Profit Margin Including Empty Days] AS

Avg(

Descendants(

[Ship Date].[Fiscal].CurrentMember,

[Ship Date].[Fiscal].[Date]

),

CoalesceEmpty(Measures.[Gross Profit Margin],0)

), Format_String='percent'

SELECT

{Measures.[Avg Gross Profit Margin],Measures.[Avg Gross Profit Margin Including Empty Days]} ON COLUMNS,

[Ship Date].[Fiscal].[Fiscal Year].Members ON ROWS

FROM

[Adventure Works]

WHERE([Product].[Product Categories].[Product].&[344])

L'esempio seguente restituisce la media giornaliera del Measures.[Gross Profit Margin] misura, calcolata sui giorni di ogni semestre dell'anno fiscale 2003, dal Adventure Works cubo.The following example returns the daily average of the Measures.[Gross Profit Margin] measure, calculated across the days of each semester in the 2003 fiscal year, from the Adventure Works cube.

WITH MEMBER Measures.[Avg Gross Profit Margin] AS  
   Avg(  
      Descendants(  
         [Ship Date].[Fiscal].CurrentMember,   
            [Ship Date].[Fiscal].[Date]  
      ),   
      Measures.[Gross Profit Margin]  
   )  
SELECT  
   Measures.[Avg Gross Profit Margin] ON COLUMNS,  
      [Ship Date].[Fiscal].[Fiscal Year].[FY 2003].Children ON ROWS  
FROM  
   [Adventure Works]  

Vedere ancheSee Also

Riferimento alla funzione MDX ( MDX )MDX Function Reference (MDX)