Megosztás a következőn keresztül:


ROWNUMBER

A következőkre vonatkozik:Számított oszlopSzámított táblaMértékVizualizációszámítási

Az aktuális környezet egyedi rangsorát adja vissza a megadott partíción belül, a megadott sorrend szerint rendezve. Ha nem található egyezés, akkor a sorszám üres.

Syntax

ROWNUMBER ( [<relation> or <axis>][, <orderBy>][, <blanks>][, <partitionBy>][, <matchBy>][, <reset>] )

Paraméterek

Időszak Definíció
relation (Nem kötelező) Egy táblakifejezés, amelyből a kimeneti sor vissza lesz adva.
Ha meg van adva, a orderBy és a partitionBy összes oszlopának onnan kell származnia.
Ha nincs megadva:
- orderBy explicit módon kell megadni.
– Minden orderBy és partitionBy oszlopnak teljes mértékben minősítettnek kell lennie, és egyetlen táblából kell származnia.
– A orderBy és partitionByösszes oszlopának alapértelmezett értéke ALLSELECTED().
axis (Nem kötelező) A vizualizáció alakzatának tengelye. Csak vizuális számításokban érhető el, és lecseréli relation.
orderBy (Nem kötelező) Az egyes partíciók rendezését meghatározó oszlopokat tartalmazó ORDERBY() záradék.
Ha nincs megadva:
- relation explicit módon kell megadni.
– Alapértelmezés szerint a relation minden olyan oszlopa rendezi a sorrendet, amely még nincs megadva a partitionBy.
blanks (Nem kötelező) Enumerálás, amely meghatározza, hogyan kezelhetők az üres értékek a relation vagy axisrendezésekor.
A támogatott értékek a következők:
  • DEFAULT (az alapértelmezett érték), ahol a numerikus értékek viselkedése üres érték, nulla és negatív értékek között van rendezve. A sztringek viselkedése üres érték, amely az összes sztring előtt van rendezve, beleértve az üres sztringeket is.
  • FIRSTaz üres cellák mindig az elején vannak rendezve, a növekvő vagy csökkenő rendezési sorrendtől függetlenül.
  • LASTaz üres cellák mindig a végén vannak rendezve, a növekvő vagy csökkenő rendezési sorrendtől függetlenül.

Vegye figyelembe, hogy ha az egyes kifejezések ORDERBY() függvényének blanks paramétere és üres mezői is meg vannak adva, blanks az egyes orderBy-kifejezések prioritást élveznek a megfelelő orderBy kifejezésnél, és a blanks megadása nélküli OrderBy-kifejezések tiszteletben tartják a szülőfüggvény blanks paraméterét.
partitionBy (Nem kötelező) A relation particionálását meghatározó oszlopokat tartalmazó PARTITIONBY() záradék. Ha nincs megadva, a relation egyetlen partícióként lesz kezelve.
matchBy (Nem kötelező) Egy MATCHBY() záradék, amely azokat az oszlopokat tartalmazza, amelyek meghatározzák az adatok egyeztetését és az aktuális sor azonosítását.
reset (Nem kötelező) Csak vizuális számításokban érhető el. Azt jelzi, hogy a számítás alaphelyzetbe áll-e, és a vizualizáció alakzatának oszlophierarchiájának melyik szintjén. Az elfogadott értékek a következők: az aktuális vizualizáció alakzatának egy oszlopára mutató mezőhivatkozás, NONE (alapértelmezett), LOWESTPARENT, HIGHESTPARENTvagy egész szám. A viselkedés a következő egész számjeltől függ:
– Ha nulla vagy nincs megadva, a számítás nem állítható vissza. Egyenértékű NONE.
– Ha pozitív, az egész szám a legmagasabbtól kezdődő, a szemcséktől független oszlopot azonosítja. HIGHESTPARENT 1-nek felel meg.
– Ha negatív, az egész szám a legalacsonyabbtól kezdődő oszlopot azonosítja az aktuális szemcséhez viszonyítva. LOWESTPARENT -1-nek felel meg.

Visszaadott érték

Az aktuális környezet sorszámszáma.

Megjegyzések

Minden orderBy, partitionByés matchBy oszlopnak megfelelő külső értékkel kell rendelkeznie ahhoz, hogy meghatározza az aktuális sort, amelyen működni kíván, az alábbi viselkedéssel:

  • Ha pontosan egy megfelelő külső oszlop van, annak értékét használja a rendszer.
  • Ha nincs megfelelő külső oszlop, akkor:
    • ROWNUMBER először az összes olyan orderBy, partitionByés matchBy oszlopot határozza meg, amelyekhez nincs megfelelő külső oszlop.
    • Ezen oszlopok meglévő értékeinek minden kombinációjához ROWNUMBER szülőkörnyezetben a rendszer kiértékeli a ROWNUMBER, és visszaad egy sort.
    • ROWNUMBERvégső kimenete ezeknek a soroknak az egyesítése.
  • Ha egynél több megfelelő külső oszlop van, a függvény hibát ad vissza.

Ha matchBy jelen van, akkor ROWNUMBER a matchBy oszlopait fogja használni, és partitionBy az aktuális sor idenfity-jének létrehozásához. Ha a orderBy és partitionBy megadott oszlopok nem azonosítják egyedileg relationminden sorát, akkor:

  • ROWNUMBER megpróbálja megtalálni az összes sor egyedi azonosításához szükséges minimális számú további oszlopot.
  • Ha ilyen oszlopok találhatók, ROWNUMBER
    • Próbálja meg megkeresni az összes sor egyedi azonosításához szükséges minimális számú további oszlopot.
    • Ezeket az új oszlopokat automatikusan hozzáfűzi orderBy záradékhoz.
    • Rendezze az egyes partíciókat ezzel az új orderBy oszlopkészlettel.
  • Ha ezek az oszlopok nem találhatók, és a függvény futásidőben döntetlent észlel, a rendszer hibát ad vissza.

reset csak vizualizációs számításokhoz használható, és nem használható orderBy vagy partitionByegyütt. Ha reset van, axis megadható, de relation nem.

1. példa – számított oszlop

A következő DAX lekérdezés:

EVALUATE
ADDCOLUMNS(
    'DimGeography',
    "UniqueRank",
    ROWNUMBER(
    	'DimGeography',
    	ORDERBY(
    		'DimGeography'[StateProvinceName], desc,
    		'DimGeography'[City], asc),
    	PARTITIONBY(
    		'DimGeography'[EnglishCountryRegionName])))
ORDER BY [EnglishCountryRegionName] asc, [StateProvinceName] desc, [City] asc

Egy táblát ad vissza, amely az egyes földrajzi helyeket a StateProvinceName és a City szerint azonos EnglishCountryRegionName névvel rangsorolja.

2. példa – vizualizációszámítás

A következő vizualizációszámítás DAX lekérdezéseket:

SalesRankWithinYear = ROWNUMBER(ORDERBY([SalesAmount], DESC), PARTITIONBY([CalendarYear]))

SalesRankAllHistory = ROWNUMBER(ORDERBY([SalesAmount], DESC))

Hozzon létre két oszlopot, amelyek minden hónapban egyedileg rangsorolják az összes értékesítést, mind az év során, mind a teljes előzmény alapján.

Az alábbi képernyőképen a vizualizációs mátrix és az első vizualizáció számítási kifejezés látható:

DAX vizualizációszámítási

INDEX ORDERBY PARTITIONBY WINDOW RANK