RANK.EQ
Applies to:
Calculated column
Calculated table
Measure
Visual calculation
Returns the ranking of a number in a list of numbers.
Syntax
RANK.EQ(<value>, <columnName>[, <order>])
Parameters
Term | Definition |
---|---|
value | Any DAX expression that returns a single scalar value whose rank is to be found. The expression is to be evaluated exactly once, before the function is evaluated, and it's value passed to the argument list. |
columnName | The name of an existing column against which ranks will be determined. It cannot be an expression or a column created using these functions: ADDCOLUMNS, ROW or SUMMARIZE. |
order | (Optional) A value that specifies how to rank number, low to high or high to low: |
order values
value | alternate value | Description |
---|---|---|
0 (zero) | FALSE | Ranks in descending order of columnName. If value is equal to the highest number in columnName then RANK.EQ is 1. |
1 | TRUE | Ranks in ascending order of columnName. If value is equal to the lowest number in columnName then RANK.EQ is 1. |
Return value
A number indicating the rank of value among the numbers in columnName.
Remarks
columnName cannot refer to any column created using these functions: ADDCOLUMNS, ROW or SUMMARIZE.I
If value is not in columnName or value is a blank, then RANK.EQ returns a blank value.
Duplicate values of value receive the same rank value; the next rank value assigned will be the rank value plus the number of duplicate values. For example if five (5) values are tied with a rank of 11 then the next value will receive a rank of 16 (11 + 5).
This function is not supported for use in DirectQuery mode when used in calculated columns or row-level security (RLS) rules.
Example 1
The following example creates a calculated column that ranks the values in SalesAmount_USD, from the InternetSales_USD table, against all numbers in the same column.
= RANK.EQ(InternetSales_USD[SalesAmount_USD], InternetSales_USD[SalesAmount_USD])
Example 2
The following example ranks a subset of values against a given sample. Assume that you have a table of local students with their performance in a specific national test and, also, you have the entire set of scores in that national test. The following calculated column will give you the national ranking for each of the local students.
= RANK.EQ(Students[Test_Score], NationalScores[Test_Score])