TopPercent (MDX)
Classifica um conjunto em ordem decrescente e retorna um conjunto de tuplas com os valores mais altos, cujo total cumulativo é igual ou maior do que um percentual especificado.
Sintaxe
TopPercent(Set_Expression, Percentage, Numeric_Expression)
Argumentos
Set_Expression
Uma expressão MDX (Multidimensional Expressions) válida que retorna um conjunto.Percentage
Uma expressão numérica válida que especifica o percentual de tuplas a ser retornado.Numeric_Expression
Uma expressão numérica válida, geralmente uma expressão MDX (Multidimensional Expressions) de coordenadas de célula, que retorna um número.
Comentários
A função TopPercent calcula a soma da expressão numérica especificada avaliada no conjunto especificado, classificando o conjunto em ordem decrescente. A função retorna os elementos com os valores mais altos, cujo percentual cumulativo do valor total somado seja pelo menos o percentual especificado. Essa função retorna o subconjunto menor de um conjunto cujo total cumulativo é pelo menos o percentual especificado. Os elementos retornados são classificados do maior para menor.
![]() |
---|
TopPercent ignora valores negativos em Numeric_Expression |
![]() |
---|
Assim como a função BottomPercent, a função TopPercent sempre quebra a hierarquia. |
Exemplo
O exemplo a seguir retorna, para a categoria Bicicleta, o menor conjunto de membros do nível Cidade na hierarquia Geografia, na dimensão Geografia, cujo total cumulativo que usa a medida Valor das Vendas do Revendedor é pelo menos 10% do total geral (começando com os membros desse conjunto com o maior número de vendas).
SELECT [Measures].[Reseller Sales Amount] ON 0,
TopPercent
({[Geography].[Geography].[City].Members}
, 10
, [Measures].[Reseller Sales Amount]
) ON 1
FROM [Adventure Works]
WHERE([Product].[Product Categories].Bikes)