Not
Åtkomst till den här sidan kräver auktorisering. Du kan prova att logga in eller ändra kataloger.
Åtkomst till den här sidan kräver auktorisering. Du kan prova att ändra kataloger.
Gäller för:
Beräknad kolumn
Beräknad tabell
Mått
Visuell beräkning
Returnerar den unika rangordningen för den aktuella kontexten inom den angivna partitionen, sorterad efter angiven ordning. Om det inte går att hitta en matchning är radnummer tomt.
Syntax
ROWNUMBER ( [<relation> or <axis>][, <orderBy>][, <blanks>][, <partitionBy>][, <matchBy>][, <reset>] )
Parametrar
| Period | Definition |
|---|---|
relation |
(Valfritt) Ett tabelluttryck som utdataraden returneras från. Om den används i visuella beräkningar accepterar den här parametern en axel i den visuella formen.
Om det anges måste alla kolumner i orderBy och partitionBy komma från den.
Om det utelämnas: - orderBy måste anges uttryckligen.– Alla orderBy och partitionBy kolumner måste vara fullständigt kvalificerade och komma från en enda tabell.
– Standardvärdet är ALLSELECTED() för alla kolumner i orderBy och partitionBy. |
orderBy |
(Valfritt) En ORDERBY-sats () som innehåller kolumnerna som definierar hur varje partition sorteras.
Om det utelämnas: - relation måste anges uttryckligen.
– Standardinställningen är att sortera efter varje kolumn i relation som inte redan har angetts i partitionBy. |
blanks |
(Valfritt) En uppräkning som definierar hur du hanterar tomma värden när du sorterar relation eller axis.
De värden som stöds är:
Observera att när parametern blanks och blankvärdena i ORDERBYfunktionen () för enskilda uttryck båda anges, blanks prioriteras i enskilda orderBy-uttryck för det relevanta orderBy-uttrycket, och orderBy-uttryck utan blanks att anges kommer att respektera parametern blanks för den överordnade funktionen. |
partitionBy |
(Valfritt) En PARTITIONBY() sats som innehåller de kolumner som definierar hur relation partitioneras. Om det utelämnas behandlas relation som en enda partition. |
matchBy |
(Valfritt) En MATCHBY() sats som innehåller de kolumner som definierar hur du matchar data och identifierar den aktuella raden. |
reset |
(Valfritt) Endast tillgängligt i visuella beräkningar. Anger om beräkningen återställs och på vilken nivå av den visuella formens kolumnhierarki. Godkända värden är: en fältreferens till en kolumn i den aktuella visuella formen, NONE (standard), LOWESTPARENT, HIGHESTPARENTeller ett heltal. Beteendet beror på heltalstecknet: – Om noll eller utelämnas återställs inte beräkningen. Motsvarar NONE.
– Om det är positivt identifierar heltal kolumnen med början från den högsta, oberoende av korn. HIGHESTPARENT motsvarar 1.
– Om det är negativt identifierar heltal kolumnen med början från den lägsta, i förhållande till det aktuella kornet. LOWESTPARENT motsvarar -1. |
Returvärde
Radnumret för den aktuella kontexten.
Kommentarer
Varje orderBy, partitionByoch matchBy kolumn måste ha ett motsvarande yttre värde för att definiera den aktuella rad som ska användas, med följande beteende:
- Om det finns exakt en motsvarande yttre kolumn används dess värde.
- Om det inte finns någon motsvarande yttre kolumn:
-
ROWNUMBER avgör först alla
orderBy,partitionByochmatchBykolumner som inte har någon motsvarande yttre kolumn. - För varje kombination av befintliga värden för dessa kolumner i ROWNUMBER överordnad kontext utvärderas ROWNUMBER och en rad returneras.
- ROWNUMBERslutliga utdata är en union av dessa rader.
-
ROWNUMBER avgör först alla
- Om det finns mer än en motsvarande yttre kolumn returneras ett fel.
Om matchBy finns försöker ROWNUMBER använda kolumner i matchBy och partitionBy för att idenfity den aktuella raden.
Om kolumnerna som anges i orderBy och partitionBy inte unikt kan identifiera varje rad i relationkan du:
- ROWNUMBER försöker hitta det minsta antal ytterligare kolumner som krävs för att unikt identifiera varje rad.
- Om sådana kolumner kan hittas kommer ROWNUMBER att
- Försök att hitta det minsta antalet ytterligare kolumner som krävs för att unikt identifiera varje rad.
- Lägg automatiskt till dessa nya kolumner i
orderBy-sats. - Sortera varje partition med den här nya uppsättningen orderBy-kolumner.
- Om sådana kolumner inte kan hittas och funktionen identifierar ett oavgjort resultat vid körning returneras ett fel.
reset kan endast användas i visuella beräkningar och kan inte användas i kombination med orderBy eller partitionBy. Om reset finns kan axis anges men relation inte.
Om värdet reset för är absolut (dvs. ett positivt heltal HIGHESTPARENT eller en fältreferens) och beräkningen utvärderas på eller över målnivån i hierarkin återställs beräkningen för varje enskilt element. Funktionen utvärderas alltså inom en partition som endast innehåller det specifika elementet.
Exempel 1 – beräknad kolumn
Följande DAX fråga:
EVALUATE
ADDCOLUMNS(
'DimGeography',
"UniqueRank",
ROWNUMBER(
'DimGeography',
ORDERBY(
'DimGeography'[StateProvinceName], desc,
'DimGeography'[City], asc),
PARTITIONBY(
'DimGeography'[EnglishCountryRegionName])))
ORDER BY [EnglishCountryRegionName] asc, [StateProvinceName] desc, [City] asc
Returnerar en tabell som unikt rangordnar varje geografi med samma EnglishCountryRegionName efter deras StateProvinceName och City.
Exempel 2 – visuell beräkning
Följande visuella beräkning DAX frågor:
SalesRankWithinYear = ROWNUMBER(ORDERBY([SalesAmount], DESC), PARTITIONBY([CalendarYear]))
SalesRankAllHistory = ROWNUMBER(ORDERBY([SalesAmount], DESC))
Skapa två kolumner som unikt rangordnar varje månad efter den totala försäljningen, både inom varje år och hela historiken.
Skärmbilden nedan visar den visuella matrisen och det första visuella beräkningsuttrycket: