Média (MDX)

Avalia um conjunto e devolve a média dos valores não vazios das células do conjunto, com a média sobre as medidas do conjunto ou sobre uma medida especificada.

Syntax

  
Avg( Set_Expression [ , Numeric_Expression ] )  

Arguments

Set_Expression
Uma expressão válida de Expressões Multidimensionais (MDX) que devolve um conjunto

Numeric_Expression
Uma expressão numérica válida que é tipicamente uma expressão de Expressões Multidimensionais (MDX) de coordenadas de célula que retornam um número.

Observações

Se for especificado um conjunto de tuplas vazias ou um conjunto vazio, a função Avg devolve um valor vazio.

A função Média calcula a média dos valores não vazios das células no conjunto especificado, calculando primeiro a soma dos valores entre as células do conjunto especificado, e depois dividindo a soma calculada pela contagem de células não vazias no conjunto especificado.

Note

Os Serviços de Análise ignoram os nulos ao calcular o valor médio num conjunto de números.

Se uma expressão numérica específica (tipicamente uma medida) não for especificada, a função Avg faz a média de cada medida dentro do contexto atual da consulta. Se for fornecida uma medida específica, a função Avg avalia primeiro a medida sobre o conjunto, e depois a função calcula a média com base na medida especificada.

Note

Ao usar a função CurrentMember numa instrução membro calculada, deve especificar uma expressão numérica porque não existe uma medida padrão para a coordenada atual nesse contexto de consulta.

Para forçar a inclusão de células vazias, a aplicação deve usar a função CoalesceEmpty ou especificar um Numeric_Expression válido que forneça um valor zero (0) para valores vazios. Para mais informações sobre células vazias, consulte a documentação do OLE DB.

Examples

O exemplo seguinte devolve a média de uma medida sobre um conjunto especificado. Note que a medida especificada pode ser a medida padrão para os membros do conjunto especificado ou uma medida especificada.

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])  

O exemplo seguinte devolve a média diária da Measures.[Gross Profit Margin] medida, calculada ao longo dos dias de cada mês do ano fiscal de 2003, a partir do cubo Adventure Works . A função média calcula a média a partir do conjunto de dias contidos em cada mês da [Ship Date].[Fiscal Time] hierarquia. A primeira versão do cálculo mostra o comportamento padrão da média ao excluir dias que não registaram quaisquer vendas em relação à média, a segunda versão mostra como incluir os dias sem vendas na média.

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])  

O exemplo seguinte devolve a média diária da Measures.[Gross Profit Margin] medida, calculada ao longo dos dias de cada semestre do ano fiscal de 2003, a partir do cubo Adventure Works .

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]