RANKX

Devolve a classificação de um número numa lista de números para cada linha no argumento da tabela .

Sintaxe

RANKX(<table>, <expression>[, <value>[, <order>[, <ties>]]])  

Parâmetros

tabela
Qualquer expressão DAX que retorna uma tabela de dados sobre a qual a expressão é avaliada.

expressão
Qualquer expressão DAX que retorna um único valor escalar. A expressão é avaliada para cada linha da tabela, para gerar todos os valores possíveis para classificação. Consulte a seção de comentários para entender o comportamento da função quando a expressão é avaliada como BLANK.

valor
(Opcional) Qualquer expressão DAX que retorna um único valor escalar cuja classificação deve ser encontrada. Consulte a seção de comentários para entender o comportamento da função quando o valor não é encontrado na expressão.

Quando o parâmetro value é omitido, o valor da expressão na linha atual é usado.

order
(Opcional) Um valor que especifica como classificar valor, baixo para alto ou alto para baixo:

valor Valor alternativo Descrição
0 (zero) FALSE Classifica-se por ordem decrescente de valores de expressão. Se o valor for igual ao maior número em expressão, RANKX retornará 1.

Este é o valor padrão quando o parâmetro order é omitido.
1 TRUE Classifica-se por ordem crescente de expressão. Se o valor for igual ao menor número em expressão, RANKX retornará 1.

Laços
(Opcional) Uma enumeração que define como determinar a classificação quando há empates.

enumeração Descrição
Ignorar O próximo valor de classificação, após um empate, é o valor de classificação do empate mais a contagem de valores empatados. Por exemplo, se cinco (5) valores estiverem empatados com uma classificação de 11, então o próximo valor receberá uma classificação de 16 (11 + 5).

Este é o valor padrão quando o parâmetro ties é omitido.
Denso O próximo valor de classificação, após um empate, é o próximo valor de classificação. Por exemplo, se cinco (5) valores estiverem empatados com uma classificação de 11, o próximo valor receberá uma classificação de 12.

Valor devolvido

O número de classificação do valor entre todos os valores possíveis de expressão avaliados para todas as linhas de números de tabela.

Observações

  • Se a expressão ou valor for avaliado como BLANK, ele será tratado como um 0 (zero) para todas as expressões que resultam em um número, ou como um texto vazio para todas as expressões de texto.

  • Se o valor não estiver entre todos os valores possíveis de expressão, então o RANKX adiciona temporariamente valor aos valores da expressão e reavalia o RANKX para determinar a classificação adequada do valor.

  • Os argumentos opcionais podem ser ignorados colocando uma vírgula vazia (,) na lista de argumentos, ou seja, RANKX(Inventory, [InventoryCost],,,"Dense")

  • Comparações relacionadas à igualdade (=, <>, >= e <=) entre valores com o tipo de dados Número decimal podem potencialmente retornar resultados inesperados ao usar a função RANKX. Resultados incorretos podem ocorrer porque os valores com o tipo de dados Número Decimal são armazenados como números de ponto flutuante IEEE Standard 754 e têm limitações inerentes em sua precisão. Para evitar resultados inesperados, altere o tipo de dados para Número decimal fixo ou faça um arredondamento forçado usando ROUND.

  • Esta função não é suportada para utilização no modo DirectQuery quando utilizada em colunas calculadas ou regras de segurança ao nível da linha (RLS).

Exemplo

A coluna calculada a seguir na tabela Produtos calcula a classificação de vendas de cada produto no canal da Internet.

= RANKX(ALL(Products), SUMX(RELATEDTABLE(InternetSales), [SalesAmount]))