RANKX
Gilt für:Berechnete Spalteberechnete TabelleMeasurevisuelle Berechnung
Gibt die Rangfolge einer Zahl in einer Liste von Zahlen für jede Zeile im argument table
zurück.
Syntax
RANKX(<table>, <expression>[, <value>[, <order>[, <ties>]]])
Parameter
table
Any DAX Ausdruck, der eine Datentabelle zurückgibt, über die der Ausdruck ausgewertet wird.
expression
Any DAX Ausdruck, der einen einzelnen skalaren valuezurückgibt. Der Ausdruck wird für jede Zeile von table
ausgewertet, um mögliche generate für die Rangfolge zu allvalues. Lesen Sie den Abschnitt "Hinweise", um das Funktionsverhalten zu verstehen, wenn expression
zu BLANKausgewertet wird.
value
(Optional) Any DAX expression that returns a single scalar value whose rank is to be found. Lesen Sie den Abschnitt "Hinweise", um das Verhalten der Funktion zu verstehen, wenn value
im Ausdruck not gefunden wird.
Wenn der parameter value
weggelassen wird, wird stattdessen der value des Ausdrucks in der aktuellen Zeile verwendet.
order
(Optional) Eine value, die angibt, wie rankvalue
, niedrig bis hoch or hoch bis niedrig:
value | alternative value | BESCHREIBUNG |
---|---|---|
0 (Null) | FALSE |
Rangiert in absteigender Reihenfolge der values des Ausdrucks.
If
value entspricht der höchsten Zahl im Ausdruck, RANKX 1 zurückgibt. Dies ist die Standardeinstellung value, wenn der Order-Parameter weggelassen wird. |
1 | TRUE |
Legt die Rangfolge in aufsteigender Reihenfolge des Ausdrucks fest. If value entspricht der niedrigsten Zahl im Ausdruck, RANKX 1 zurückgibt. |
ties
(Optional) Eine Aufzählung, die definiert, wie die Rangfolge bestimmt wird, wenn Bindungen vorhanden sind.
Enumeration | BESCHREIBUNG |
---|---|
Skip |
Die nextrankvaluenach einer Binde ist die rankvalue der Binde plus die count der gebundenen values. Beispielsweise werden if fünf (5) values mit einer rank von 11 verknüpft, dann erhält die nextvalue eine rank von 16 (11 + 5). Dies ist die Standardeinstellung value, wenn ties Parameter weggelassen wird. |
Dense |
Die nextrankvaluenach einer Binde ist die nextrankvalue. Beispielsweise werden if fünf (5) values mit einem rank von 11 verknüpft, dann erhält die nextvalue eine rank von 12. |
value zurückgeben
Die rank Anzahl der value
unter all möglichen valuesexpression
für all Zeilen table
Zahlen ausgewertet.
Bemerkungen
If
expression
orvalue
wird als BLANK 0 (Null) für all Ausdrücke behandelt, die zu einer Zahl führen, or als leerer Text für all Textausdrücke.If
value
notall möglichen valuesexpression
dann RANKXvalue
value
expression
andRANKXrank neu auswertet, um die richtigevalue
zu bestimmen.Optionale Argumente können übersprungen werden, indem ein leeres Komma (,) in der Argumentliste platziert wird, z. B.
RANKX(Inventory, [InventoryCost],,,"Dense")
.Gleichheitsvergleiche related (
=
,<
,>
,>=
and<=
) zwischen values mit dem Datentyp Dezimalzahl können möglicherweise unerwartete Ergebnisse zurückgeben, wenn RANKX Funktion verwendet wird. Falsche Ergebnisse können auftreten, da values mit Dezimalzahl Datentyp als IEEE Standard 754 Gleitkommazahlen gespeichert werden, and inhärente Einschränkungen in ihrer Genauigkeit aufweisen. Um unerwartete Ergebnisse zu vermeiden, ändern Sie den Datentyp in Fixed Dezimalzahl,or eine erzwungene Rundung mithilfe von ROUNDdurchführen.Diese Funktion wird not für die Verwendung im DirectQuery-Modus unterstützt, wenn sie in berechneten Spalten or Sicherheitsregeln auf Zeilenebene (RLS) verwendet wird.
Beispiel
Die folgende berechnete Spalte in der Tabelle "Produkte" berechnet die Verkaufsrangfolge für jede product im Internetkanal.
= RANKX(ALL(Products), SUMX(RELATEDTABLE(InternetSales), [SalesAmount]))