RANKX
Van toepassing op:berekende kolomberekende tabelMetingVisuele berekening
Retourneert de rangorde van een getal in een lijst met getallen voor elke rij in het argument table
.
Syntaxis
RANKX(<table>, <expression>[, <value>[, <order>[, <ties>]]])
Parameters
table
Elke DAX-expressie die een tabel met gegevens retourneert waarvoor de expressie wordt geëvalueerd.
expression
Elke DAX-expressie die één scalaire waarde retourneert. De expressie wordt geëvalueerd voor elke rij van table
om alle mogelijke waarden voor classificatie te genereren. Zie de sectie opmerkingen om inzicht te hebben in het gedrag van de functie wanneer expression
evalueert naar BLANK.
value
(optioneel) Elke DAX-expressie die één scalaire waarde retourneert waarvan de rang moet worden gevonden. Zie de sectie opmerkingen om inzicht te hebben in het gedrag van de functie wanneer value
niet wordt gevonden in de expressie.
Wanneer de parameter value
wordt weggelaten, wordt in plaats daarvan de waarde van de expressie in de huidige rij gebruikt.
order
(optioneel) Een waarde die aangeeft hoe value
moet worden gerangschikt, laag naar hoog of hoog naar laag:
waarde | alternatieve waarde | Beschrijving |
---|---|---|
0 (nul) | FALSE |
Rangschikt in aflopende volgorde van waarden van expressies. Als de waarde gelijk is aan het hoogste getal in de expressie, geeft RANKX 1 als resultaat. Dit is de standaardwaarde wanneer de orderparameter wordt weggelaten. |
1 | TRUE |
Rangschikt in oplopende volgorde van expressies. Als de waarde gelijk is aan het laagste getal in de expressie, geeft RANKX 1 als resultaat. |
ties
(optioneel) Een opsomming waarmee wordt gedefinieerd hoe u rangschikking bepaalt wanneer er banden zijn.
inventarisatie | Beschrijving |
---|---|
Skip |
De volgende rangschikkingswaarde, na een gelijkspel, is de rangschikkingswaarde van de tie plus het aantal gekoppelde waarden. Als bijvoorbeeld vijf (5) waarden zijn gekoppeld aan een rang van 11, ontvangt de volgende waarde een rang van 16 (11 + 5). Dit is de standaardwaarde wanneer ties parameter wordt weggelaten. |
Dense |
De volgende rangschikkingswaarde, na een gelijkspel, is de volgende rangschikkingswaarde. Als bijvoorbeeld vijf (5) waarden zijn gekoppeld aan een rang van 11, ontvangt de volgende waarde een rang van 12. |
Retourwaarde
Het rangnummer van value
tussen alle mogelijke waarden van expression
geëvalueerd voor alle rijen van table
getallen.
Opmerkingen
Als
expression
ofvalue
resulteert in BLANK wordt het beschouwd als een 0 (nul) voor alle expressies die resulteren in een getal of als een lege tekst voor alle tekstexpressies.Als
value
niet onder alle mogelijke waarden vanexpression
valt, voegt RANKXvalue
tijdelijk toe aan de waarden uitexpression
en evalueert RANKX opnieuw om de juiste rang vanvalue
te bepalen.Optionele argumenten kunnen worden overgeslagen door een lege komma (,) in de lijst met argumenten te plaatsen, zoals
RANKX(Inventory, [InventoryCost],,,"Dense")
.Vergelijkingen met betrekking tot gelijkheid (
=
,<
,>
,>=
en<=
) tussen waarden met het gegevenstype decimaal getal kunnen mogelijk onverwachte resultaten opleveren bij het gebruik van RANKX functie. Onjuiste resultaten kunnen optreden omdat waarden met decimaal getal gegevenstype worden opgeslagen als IEEE Standard 754 drijvendekommanummers en inherente beperkingen hebben in hun precisie. Als u onverwachte resultaten wilt voorkomen, wijzigt u het gegevenstype in vast decimaal getal of voert u een geforceerde afronding uit met behulp van ROUND.Deze functie wordt niet ondersteund voor gebruik in de DirectQuery-modus wanneer deze wordt gebruikt in regels voor beveiliging op rijniveau (berekende kolommen of beveiliging op rijniveau).
Opmerking
De volgende berekende kolom in de tabel Producten berekent de verkooprangschikking voor elk product in het internetkanaal.
= RANKX(ALL(Products), SUMX(RELATEDTABLE(InternetSales), [SalesAmount]))