RANKX
Vzťahuje sa na:vypočítaný stĺpec
vypočítanej tabuľky
vizuálového výpočtu
Vráti poradie čísla v zozname čísel pre každý riadok v argumente table
.
Syntax
RANKX(<table>, <expression>[, <value>[, <order>[, <ties>]]])
Parametre
table
Akýkoľvek výraz DAX, ktorý vráti tabuľku údajov, pre ktorú sa výraz vyhodnotí.
expression
Akýkoľvek výraz DAX, ktorý vráti jednu skalárnu hodnotu. Výraz sa vyhodnotí pre každý riadok table
, aby sa vygenerovali všetky možné hodnoty na hodnotenie. V časti s poznámkami zistíte, ako táto funkcia vyhodnotí expression
BLANK.
value
(voliteľné) Akýkoľvek výraz DAX, ktorý vracia jednu skalárnu hodnotu, ktorej poradie má byť určené. V časti s poznámkami zistíte, ako táto funkcia vystihla, keď value
vo výraze nenájde.
Keď je parameter value
vynechaný, namiesto toho sa použije hodnota výrazu v aktuálnom riadku.
order
(voliteľné) Hodnota, ktorá určuje, ako sa má klasifikovať poradie value
, od najnižšej po najvyššiu alebo naopak:
hodnota | alternatívna hodnota | Description |
---|---|---|
0 (nula) | FALSE |
Zaraďuje sa do zostupného poradia hodnôt výrazu. Ak sa hodnota rovná najvyššiemu číslu vo výraze, potom RANKX vráti hodnotu 1. Toto je predvolená hodnota pri vynechaní parametra order. |
1 | TRUE |
Vykoná sa zoradenie vo vzostupnom poradí výrazu. Ak sa hodnota rovná najnižšiemu číslu vo výraze, potom RANKX vráti hodnotu 1. |
ties
(voliteľné) Enumerácia, ktorá definuje, ako určiť poradie v prípadoch, keď existujú spojenia.
Enumerácie | Description |
---|---|
Skip |
Hodnota poradia nasledujúca po spojení je hodnotou poradia spojenia plus počet spojených hodnôt. Ak je napríklad spojených päť (5) hodnôt s poradím 11, potom bude nasledujúca hodnota poradia 16 (11 + 5). Toto je predvolená hodnota pri vynechaní parametra ties . |
Dense |
Hodnota poradia nasledujúca po spojení je nasledujúcou hodnotou poradia. Ak je napríklad spojených päť (5) hodnôt s poradím 11, potom bude nasledujúca hodnota poradia 12. |
Vrátená hodnota
Číslo poradia value
medzi všetkými možnými hodnotami expression
vyhodnotených pre všetky riadky table
čísel.
Poznámky
Ak
expression
alebovalue
vyhodnotí ako BLANK pre všetky výrazy, ktoré majú za následok číslo, alebo ako prázdny text pre všetky textové výrazy, sa spracuje ako 0 (nula).Ak
value
nie je medzi všetkými možnými hodnotamiexpression
potom RANKX dočasne pridávalue
k hodnotám zexpression
a opätovne vyhodnotí RANKX s cieľom určiť správne poradievalue
.Voliteľné argumenty môžu byť vynechané umiestnením prázdnej čiarky (,) v zozname argumentov, napríklad
RANKX(Inventory, [InventoryCost],,,"Dense")
.Porovnania súvisiace s rovnosťou (
=
,<
,>
,>=
a<=
) medzi hodnotami s typom údajov Desatinné číslo môžu pri použití funkcie RANKX potenciálne vrátiť neočakávané výsledky. Môžu nastať nesprávne výsledky, pretože hodnoty s desatinné číslo typ údajov sú uložené ako IEEE Standard 754 s pohyblivou desatinnou čiarkou a majú vlastné obmedzenia ich presnosti. Ak sa chcete vyhnúť neočakávaným výsledkom, zmeňte typ údajov na Pevné desatinné číslo alebo vynútené zaokrúhlenie pomocou ROUND.Táto funkcia nie je podporovaná na použitie v režime DirectQuery, keď sa používa vo vypočítaných stĺpcoch alebo v pravidlách zabezpečenia na úrovni riadkov (RLS).
Príklad
Nasledujúci vypočítaný stĺpec v tabuľke Produkty vypočíta poradie predaja pre každý produkt v internetovom kanáli.
= RANKX(ALL(Products), SUMX(RELATEDTABLE(InternetSales), [SalesAmount]))