Compartir a través de


RANKX

Se aplica a:columna CalculadaTabla calculadaMeasurecálculo visual

Devuelve la clasificación de un número en una lista de números para cada fila del argumento table.

Sintaxis

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

Parámetros

table expresión Any DAX que devuelve una tabla de datos sobre la que se evalúa la expresión.

expression expresión Any DAX que devuelve un único valueescalar. La expresión se evalúa para cada fila de table, para generateall posible values para la clasificación. Consulte la sección de comentarios para comprender el comportamiento de la función cuando expression se evalúa como BLANK.

value (opcional) Expresión DAX que devuelve un único value escalar cuyo rank se va a encontrar. Consulte la sección de comentarios para comprender el comportamiento de la función cuando value se not se encuentra en la expresión.

Cuando se omite el parámetro value, se usa en su lugar la value de expresión en la fila actual.

order (opcional) Un value que especifica cómo rankvalue, bajo a alto or alto a bajo:

value value alternativos Descripción
0 (cero) FALSE Clasifica en orden descendente de values de expresión. If value es igual al número más alto de la expresión y, a continuación, RANKX devuelve 1.

Este es el value predeterminado cuando se omite el parámetro order.
1 TRUE Clasifica en orden ascendente los valores de la expresión. If value es igual al número más bajo de la expresión y, a continuación, RANKX devuelve 1.

ties (opcional) Enumeración que define cómo determinar la clasificación cuando hay vínculos.

enumeración Descripción
Skip El nextrankvalue, después de un empate, es el rankvalue del empate más el count de values. Por ejemplo, if cinco (5) values están vinculados con un rank de 11, el nextvalue recibirá un rank de 16 (11 + 5).

Este es el value predeterminado cuando se omite ties parámetro.
Dense El nextrankvalue, después de un empate, es el nextrankvalue. Por ejemplo, if cinco (5) values están vinculados con un rank de 11, el nextvalue recibirá un rank de 12.

Devolver value

Número rank de value entre all posible values de expression evaluados para all filas de números de table.

Comentarios

  • If expression or value se evalúa como BLANK se trata como 0 (cero) para all expresiones que dan como resultado un número, or como texto vacío para all expresiones de texto.

  • If value se not entre all posibles values de expression, RANKX agrega temporalmente value al values desde expressionand vuelve a evaluar RANKX para determinar la rank adecuada de value.

  • Los argumentos opcionales se pueden omitir colocando una coma vacía (,) en la lista de argumentos, como RANKX(Inventory, [InventoryCost],,,"Dense").

  • Comparaciones de igualdad related (=, <, >, >=and<=) entre values con el número decimal tipo de datos puede devolver resultados inesperados al usar RANKX función. Los resultados incorrectos pueden producirse porque values con tipo de datos número decimal se almacenan como números de punto flotante IEEE Standard 754 and tienen limitaciones inherentes en su precisión. Para evitar resultados inesperados, cambie el tipo de datos a Fixed número decimalor realice un redondeo forzado mediante ROUND.

  • Esta función se not se admite para su uso en el modo DirectQuery cuando se usa en columnas calculadas or reglas de seguridad de nivel de fila (RLS).

Ejemplo

La siguiente columna calculada de la tabla Products calcula la clasificación de ventas para cada product en el canal de Internet.

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