Функция RANKX (DAX)

Возвращает ранг числа в списке чисел для каждой строки в аргументе table.

RANKX(<table>, <expression>[, <value>[, <order>[, <ties>]]])
таблица

Любое выражение DAX, возвращающее таблицу данных, используемую для вычисления выражения.

выражение

Любое выражение DAX, возвращающее скалярное значение. Это выражение вычисляется для каждой строки в таблице table для формирования всех возможных значений для ранжирования. Описание поведения этой функции в случае, если выражение expression возвращает пустое значение, см. в разделе «Примечания».

value

Любое выражение DAX, возвращающее скалярное значение, ранг которого нужно найти (необязательное). Описание поведения этой функции в случае, если значение value не удается найти в выражении, см. в разделе «Примечания».

Если параметр value не указан, вместо него используется значение выражения в текущей строке.

order

Необязательное значение, определяющее способ ранжирования value (от малых к большим или от больших к малым):

value

альтернативное значение

Описание

0 (ноль)

FALSE

Ранги в выражении со значениями, упорядоченными по убыванию. Если значение равно наибольшему числу в выражении, функция RANKX возвращает 1.

Это значение по умолчанию, если параметр order не указан.

1

TRUE

Ранги в порядке выражений по возрастанию. Если значение равно наименьшему числу в выражении, функция RANKX возвращает значение 1.

ties

Необязательное перечисление, определяющее способ идентификации ранга при наличии одинаковых значений.

перечисление

Описание

Skip

Ранжирующее значение, следующее после одинаковых значений, представляет собой ранг одинаковых значений плюс количество этих значений. Например, если пяти (5) одинаковым значениям присвоен ранг 11, следующему значению будет присвоен ранг 16 (11 + 5).

Это значение по умолчанию, если не указан параметр ties.

Dense

Ранжирующим значением, следующим после одинаковых значений, будет следующее ранжирующее значение. Например, если пяти (5) одинаковым значениям присвоен ранг 11, следующему значению будет присвоен ранг 12.

Номер ранга значения value среди возможных значений expression, вычисленных для всех строк в таблице table.

  • Если expression или value вычисляется как пустое значение, оно обрабатывается во всех выражениях как 0 (нуль) для числовых выражений или пустой текст для текстовых выражений.

  • Если value не указано среди всех возможных значений expression, то RANKX временно добавляет value к значениям из expression и повторно вычисляет RANKX для определения правильного ранга value.

  • Необязательные аргументы можно пропустить, указав запятую (,) в списке аргументов, то есть RANKX(Inventory, [InventoryCost],,,"Dense")

Следующий вычисляемый столбец в таблице «Products» используется для вычисления ранга продаж через Интернет для всех товаров.

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