Funkcja RANKX (język DAX)
Zwraca klasyfikację liczby na liście liczb dla każdego wiersza w argumencie table.
Składnia
RANKX(<table>, <expression>[, <value>[, <order>[, <ties>]]])
Parametry
table
Dowolne wyrażenie języka DAX zwracające tabelę danych, dla której zostanie obliczone wyrażenie.expression
Dowolne wyrażenie języka DAX zwracające pojedynczą wartość skalarną. Wyrażenie jest obliczane dla każdego wiersza tabeli table w celu wygenerowania wszystkich możliwych wartości do klasyfikacji. W sekcji Uwagi opisano zachowanie funkcji, gdy wynikiem obliczenia wyrażenia expression jest wartość pusta.value
(Argument opcjonalny) Dowolne wyrażenie języka DAX zwracające pojedynczą wartość skalarną, dla której należy wyznaczyć rangę. W sekcji Uwagi opisano zachowanie funkcji w sytuacji, gdy wartość value nie zostanie odnaleziona w wyrażeniu.Gdy parametr value zostanie pominięty, zamiast niego będzie używana wartość wyrażenia w bieżącym wierszu.
order
(Argument opcjonalny) Wartość określająca sposób wyznaczania rangi wartości określonej w argumencie value (od małych do dużych lub od dużych do małych):wartość
wartość alternatywna
Opis
0 (zero)
Fałsz
Rangi wartości wyrażenia są ustalane w kolejności malejącej. Jeśli wartość jest równa największej liczbie w wyrażeniu, funkcja RANKX zwraca wartość 1.
Jest to wartość domyślna używana w przypadku pominięcia parametru order.
1
PRAWDA
Rangi wartości wyrażenia są ustalane w kolejności rosnącej. Jeśli wartość jest równa najmniejszej liczbie w wyrażeniu, funkcja RANKX zwraca wartość 1.
ties
(Argument opcjonalny) Wyliczenie definiujące sposób ustalania klasyfikacji w przypadku grupy równych wartości.wyliczenie
Opis
Skip
Następna wartość rangi (po grupie równych wartości) jest równa wartości rangi grupy równych wartości plus liczba równych wartości. Na przykład jeśli pięć (5) wartości ma rangę równą 11, następna wartość otrzyma rangę równą 16 (11 + 5).
Jest to wartość domyślna używana w przypadku pominięcia parametru ties.
Dense
Następna wartość rangi (po grupie równych wartości) jest równa następnej wartości rangi. Na przykład jeśli pięć (5) wartości ma rangę równą 11, następna wartość otrzyma rangę równą 12.
Wartość zwracana
Ranga wartości value pośród wszystkich możliwych wartości wyrażenia expression obliczonego dla wszystkich wierszy tabeli table zawierających liczby.
Uwagi
Jeśli wyrażenie expression lub wartość value będzie równa wartości pustej, będzie traktowana jako wartość zerowa (0) we wszystkich wyrażeniach zwracających liczbę oraz jako pusty tekst we wszystkich wyrażeniach tekstowych.
Jeśli wartość value nie znajduje się pośród wszystkich możliwych wartości wyrażenia expression, funkcja RANKX tymczasowo dodaje wartość value do wartości z wyrażenia expression i jest ponownie obliczana w celu ustalenia prawidłowej rangi wartości value.
Argumenty opcjonalne można pominąć, umieszczając sam przecinek (,) na liście argumentów, na przykład RANKX(Inventory, [InventoryCost],,,"Dense")
Przykład
W przedstawionej poniżej kolumnie obliczeniowej w tabeli Products jest obliczana klasyfikacja sprzedaży każdego produktu oferowanego w kanale internetowym.
=RANKX(ALL(Products), SUMX(RELATEDTABLE(InternetSales), [SalesAmount]))