HODNOST
Platí pro:Calculated columnCalculated tableMeasureVisual calculation
Vrátí pořadí aktuálního kontextu v zadaném oddílu seřazené podle zadaného pořadí. Pokud nebyla nalezena shoda, pak je pořadí prázdné.
Syntaxe
RANK ( [<ties>][, <relation> or <axis>][, <orderBy>][, <blanks>][, <partitionBy>][, <matchBy>][, <reset>] )
Parametry
Pojem | definice |
---|---|
osti | (Volitelné) Definuje, jak zpracovat řazení, když jsou svázané dva nebo více řádků. Pokud je tato hodnota zadaná, podporovaná hodnota je BUĎ DENSE, nebo SKIP. Pokud tento parametr vynecháte:- Výchozí hodnota přeskočit |
Vztah | (Volitelné) Výraz tabulky, ze kterého se vrátí výstupní řádek. Pokud je zadáno, musí z něj pocházet všechny sloupce v <pořadíBy> a <partitionBy> . Pokud tento parametr vynecháte: – <orderBy> musí být explicitně zadáno.– Všechny <sloupce orderBy> a <partitionBy> musí být plně kvalifikované a pocházejí z jedné tabulky. – Výchozí hodnota je ALLSELECTED() všech sloupců v <pořadíBy> a <partitionBy>. |
osa | (Volitelné) Osa ve vizuálním obrazci. K dispozici pouze ve vizuálních výpočtech <a nahrazuje relaci>. |
Orderby | (Volitelné) Klauzule ORDERBY() obsahující sloupce definující způsob řazení jednotlivých oddílů. Pokud tento parametr vynecháte, <musí být explicitně zadán vztah>. – Výchozí nastavení řazení podle každého sloupce ve <vztahu> , který ještě není zadán v <partitionBy>. |
Mezery | (Volitelné) Výčet, který definuje, jak zpracovat prázdné hodnoty při řazení. Podporované hodnoty jsou:
|
partitionBy | (Volitelné) Klauzule PARTITIONBY() obsahující sloupce definující způsob <rozdělení relace> . Pokud tento parametr vynecháte, <považuje se relace> za jeden oddíl. |
matchBy | (Volitelné) Klauzule POZVYHLEDAT() obsahující sloupce, které definují, jak se shodují s daty, a identifikují aktuální řádek. |
resetování | (Volitelné) K dispozici pouze ve vizuálních výpočtech. Určuje, jestli se výpočet resetuje a na jaké úrovni hierarchie sloupců obrazce vizuálu. Přijaté hodnoty jsou: NONE, LOWESTPARENT, HIGHESTPARENT nebo celé číslo. Chování závisí na celočíselném znaménku: – Pokud je nula nebo vynechána, výpočet se neobnoví. Ekvivalent funkce NONE. - Pokud je kladné, celé číslo identifikuje sloupec začínající od nejvyššího, nezávisle na agregačním intervalu. FUNKCE HIGHESTPARENT je ekvivalentní hodnotě 1. - Pokud je záporné, celé číslo identifikuje sloupec počínaje nejnižší hodnotou vzhledem k aktuálnímu agregačnímu intervalu. NEJNIŽŠÍPARENT je ekvivalentní hodnotě -1. |
Vrácená hodnota
Číslo pořadí pro aktuální kontext.
Poznámky
Každý <sloupec orderBy>, <partitionBy> a <matchBy> musí mít odpovídající vnější hodnotu, aby bylo možné definovat aktuální řádek, na kterém se má pracovat, s následujícím chováním:
- Pokud je právě jeden odpovídající vnější sloupec, použije se jeho hodnota.
- Pokud neexistuje odpovídající vnější sloupec, postupujte takto:
- Funkce RANK nejprve určí všechny <sloupce orderBy>, <partitionBy> a <matchBy> , které nemají odpovídající vnější sloupec.
- Pro každou kombinaci existujících hodnot pro tyto sloupce v nadřazeném kontextu RANK se vyhodnotí funkce RANK a vrátí se řádek.
- Konečný výstup funkce RANK je číslo pořadí.
Pokud <je k dispozici shodaBy> , funkce RANK se pokusí použít sloupce v <matchBy> a <partitionBy> k idenfity aktuálního řádku.
Pokud sloupce zadané v pořadíBy <> a <partitionBy> nemohou jednoznačně identifikovat každý řádek ve <vztahu>, pak dva nebo více řádků může mít stejné pořadí a pořadí bude určeno parametrem vazby.
Funkce RANK vrátí prázdnou hodnotu pro řádky souhrnu. Doporučujeme výraz důkladně otestovat.
Funkce RANK se nerovná s funkcí RANKX, protože funkce SUMA porovnává s funkcí SUMX.
<Resetování> lze použít pouze ve vizuálních výpočtech a nelze ho použít v kombinaci s <orderBy> nebo <partitionBy>. Pokud <je k dispozici resetování>, je možné zadat osu>, <ale <relační nemůže>.
Příklad 1 – počítaný sloupec
Následující dotaz DAX:
EVALUATE
ADDCOLUMNS(
'DimGeography',
"Rank",
RANK(
DENSE,
'DimGeography',
ORDERBY(
'DimGeography'[StateProvinceName], desc,
'DimGeography'[City], asc),
LAST,
PARTITIONBY(
'DimGeography'[EnglishCountryRegionName])))
ORDER BY [EnglishCountryRegionName] asc, [StateProvinceName] desc, [City] asc
Vrátí tabulku, která seřadí každou zeměpisnou oblast se stejným názvem EnglishCountryRegionName podle stateProvinceName a City. Prázdné <hodnoty sloupce orderBy> jsou seřazené na konci.
Příklad 2 – výpočet vizuálu
Následující dotazy jazyka DAX pro výpočet vizuálu:
SalesRankWithinYear = RANK(DENSE, ORDERBY([SalesAmount], DESC), PARTITIONBY([CalendarYear]))
SalesRankAllHistory = RANK(DENSE, ORDERBY([SalesAmount], DESC))
Vytvořte dva sloupce, které každý měsíc řadí podle celkového prodeje, a to jak v rámci každého roku, tak v celé historii.
Následující snímek obrazovky ukazuje vizuální matici a první výraz výpočtu vizuálu:
Související obsah
Váš názor
https://aka.ms/ContentUserFeedback.
Připravujeme: V průběhu roku 2024 budeme postupně vyřazovat problémy z GitHub coby mechanismus zpětné vazby pro obsah a nahrazovat ho novým systémem zpětné vazby. Další informace naleznete v tématu:Odeslat a zobrazit názory pro