Lue englanniksi

Jaa


ROWNUMBER

Koskee seuraavia:Laskettu sarakeLaskettu taulukkoMeasureVisuaalinen laskutoimitus

Palauttaa nykyisen kontekstin yksilöivän sijoituksen määritetyssä osiossa lajiteltuna määritetyn järjestyksen mukaan. If vastaavuutta ei löydy, rownumber on blank.

Syntaksi

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

Parametrit

Termi Määritelmä
relation (Valinnainen) Taulukkolauseke, josta tulosterivi palautetaan.
If määritettynä orderByandpartitionByall sarakkeiden on oltava peräisin siitä.
If jätetään pois:
- orderBy on määritettävä eksplisiittisesti.
– AllorderByandpartitionBy sarakkeiden on oltava täydellisiä, and ne ovat peräisin yksittäisestä taulukosta.
: all sarakkeiden oletusarvo on ALLSELECTED() orderByandpartitionBy.
axis (Valinnainen) Akseli visuaalisessa muodossa. Käytettävissä vain visualisoinnin laskutoimituksissa, and korvaa relation.
orderBy (Valinnainen) ORDERBY()-lause, joka sisältää sarakkeet, jotka define kunkin osion lajittelutavan.
If jätetään pois:
- relation on määritettävä eksplisiittisesti.
: tämä määrittää oletusarvoisesti järjestyksen relation jokaisen sarakkeen mukaan, not on jo määritetty partitionBy.
blanks (Valinnainen) Luettelointi, joka määrittää, miten blankvalues käsitellään lajittelun aikana.
Tuetut values ovat seuraavat:
  • DEFAULT (oletusasetus value), jossa numeerisen values toiminta on blankvalues järjestetään nollan and negatiivisen valuesvälillä. Merkkijonojen toiminta on blankvalues järjestetään ennen all merkkijonoja, mukaan lukien tyhjät merkkijonot.
  • FIRST, tyhjät tilat järjestetään aina alussa riippumatta nousevasta or laskevassa lajittelujärjestyksessä.
  • LAST, tyhjät tilat järjestetään aina loppuun riippumatta nousevasta or laskevassa lajittelujärjestyksessä.

Huomioi, että kun blanks parametrin and määritetään tyhjät ORDERBY() -funktiossa yksittäisessä lausekkeessa, blanks yksittäisessä orderBy-lausekkeessa prioriteetiksi soveltuvalle orderBy-lausekkeelle, andorderBy lausekkeet ilman, että blanks määritetään, noudattaa blanks-parametria Window pääfunktiossa.
partitionBy (Valinnainen) PARTITIONBY()-lause, joka sisältää sarakkeet, jotka definerelation ositusta.
If jätetään pois, relation käsitellään yksittäisenä osiona.
matchBy (Valinnainen) MATCHBY()-lause, joka sisältää sarakkeet, jotka define tietojen vastaavuuden and tunnistaa nykyisen rivin.
reset (Valinnainen) Käytettävissä vain visualisoinnin laskutoimituksissa. Ilmaisee, if laskutoimitus nollautuu and millä tasolla visualisoinnin muodon sarakehierarkiaa käytetään. Hyväksyttyjä values ovat seuraavat: NONE, LOWESTPARENT, HIGHESTPARENT, or kokonaisluku. Toiminta riippuu kokonaisluku-sign:
– If nolla or pois jätettäestä, laskutoimitusta ei not nollata. Vastaa NONE.
– If positiivinen, kokonaisluku tunnistaa sarakkeen aloittaen suurimmasta, viljasta riippumatta. HIGHESTPARENT vastaa lukua 1.
– If negatiivinen, kokonaisluku tunnistaa sarakkeen aloittaen pienimmästä tasosta suhteessa nykyiseen rakeeseen. LOWESTPARENT vastaa lukua -1.

Palauta value

Nykyisen kontekstin rownumber luku.

Huomautukset

Jokaisella orderBy, partitionBy, andmatchBy sarakkeella on oltava vastaava ulkoinen value, joka auttaa define nykyistä toimivaa riviä seuraavasti:

  • If ulompia sarakkeita on tarkalleen yksi, sen value käytetään.
  • If vastaavaa ulkosaraketta ei ole, ja sitten:
    • ROWNUMBER määrittää firstallorderBy, partitionBy, andmatchBy sarakkeet, joilla ei ole vastaavaa ulkosaraketta.
    • Näiden sarakkeiden jokaisen olemassa olevan values yhdistelmän ROWNUMBER pääkontekstissa ROWNUMBER arvioidaan, and rivi palautetaan.
    • ROWNUMBERlopullinen tulos on näiden rivien union.
  • If ulompia sarakkeita on useampi kuin yksi, palautetaan error.

If matchBy on olemassa, ROWNUMBER yrittää käyttää matchByandpartitionBy sarakkeita nykyisen rivin tunnistamiseksi.
If orderBy and partitionBy määritettyjä sarakkeita ei pysty yksilöivästi tunnistamaan jokaista relationriviä, sitten:

  • ROWNUMBER yrittää find jokaisen rivin yksilöimiseen vähiten lisäsarakkeita.
  • If tällaisia sarakkeita löytyy, ROWNUMBER
    • Yritä find pienin määrä lisäsarakkeita, joita jokaisen rivin yksilöiminen edellyttää.
    • Liitä nämä uudet sarakkeet automaattisesti orderBy-lauseeseen.
    • Lajittele kukin osio käyttämällä tätä uutta orderBy -sarakejoukkoa.
  • If tällaisia sarakkeita ei löydy and funktio havaitsee tasapelin suorituksen aikana, palautetaan error.

reset voi käyttää vain visuaalisissa laskutoimituksissa, and ei voi käyttää yhdessä orderByorpartitionBykanssa. If reset on olemassa, voidaan määrittää axis mutta relation ei.

Esimerkki 1 – laskettu sarake

Seuraava kyselyn DAX:

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

Palauttaa taulukon, joka asettaa kukin maantieteellisen alueen yksilöllisesti samalle EnglishCountryRegionName-arvolle StateProvinceName-and City-sarakkeen mukaan.

Esimerkki 2 – visuaalinen laskutoimitus

Seuraava visuaalinen laskutoimitus DAX kyselyitä:

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

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

Luo kaksi saraketta, jotka rank kukin yksilöllisesti kokonaismyynnin month kummassakin yearand koko historian.

Alla olevassa näyttökuvassa näkyy visuaalinen matriisi andfirst visuaalisen laskentalausekkeen:

DAX visuaalisen laskutoimituksen

INDEX
ORDERBY
PARTITIONBY
WINDOW
RANK