RANKX

Применяется к:вычисляемой таблице вычисляемой таблицы Вычисление визуального элемента измерениявычисляемой таблицы

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

Синтаксис

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

Параметры

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

выражение
Любое выражение DAX, возвращающее одно скалярное значение. Выражение вычисляется для каждой строки таблицы, чтобы создать все возможные значения для ранжирования. Ознакомьтесь с разделом примечаний, чтобы понять поведение функции, когда выражение оценивается как ПУСТОе.

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

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

order
(Необязательно) Значение, указывающее, как ранжировать значение, низкое до высокого или высокого уровня:

значение альтернативное значение Description
0 (ноль) FALSE Ранжирует в порядке убывания значений выражения. Если значение равно самому высокому числу в выражении, РАНГX возвращает значение 1.

Это значение по умолчанию при опущении параметра заказа.
1 TRUE Ранжирует по возрастанию выражения. Если значение равно наименьшему числу в выражении, РАНГX возвращает значение 1.

Связи
(Необязательно) Перечисление, определяющее, как определить ранжирование при наличии связей.

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

Это значение по умолчанию при пропуске параметра связей .
Плотной Следующее значение ранжирования после галстука — это следующее значение ранжирования. Например, если пять (5) значений привязаны к рангу 11, то следующее значение получит ранг 12.

Возвращаемое значение

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

Замечания

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

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

  • Необязательные аргументы могут быть пропущены путем размещения пустой запятой (,) в списке аргументов, т. е. RANKX(InventoryCost],,, "Плотная")

  • Связанные с равенством сравнения (=, <>= > и <=) между значениями с типом данных Десятичное число, могут возвращать непредвиденные результаты при использовании функции RANKX. Неправильные результаты могут возникать из-за того, что значения с типом данных Десятичное число хранятся в виде чисел с плавающей запятой, соответствующих стандарту IEEE Standard 754, и имеют свои ограничения в точности. Чтобы избежать непредвиденных результатов, измените тип данных на Десятичное число с фиксированной запятой или выполните принудительное округление с помощью ROUND.

  • Эта функция не поддерживается для использования в режиме DirectQuery при использовании в вычисляемых столбцах или правилах безопасности на уровне строк (RLS).

Пример

Следующий вычисляемый столбец в таблице "Продукты" вычисляет рейтинг продаж для каждого продукта в канале Интернета.

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