Freigeben über


ROWNUMBER

Gilt für:Berechnete Spalteberechnete TabelleMeasurevisuelle Berechnung

Gibt den eindeutigen Rang für den aktuellen Kontext innerhalb der angegebenen Partition zurück, sortiert nach der angegebenen Reihenfolge. If eine Übereinstimmung nicht gefunden werden kann, wird rownumberblank.

Syntax

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

Parameter

Begriff Definition
relation (Optional) Ein Tabellenausdruck, über den die Ausgabezeile zurückgegeben wird.
If angegeben, müssen all Spalten in orderByandpartitionBy daraus stammen.
If weggelassen:
- orderBy muss explizit angegeben werden.
– AllorderByandpartitionBy Spalten müssen vollqualifizierte and aus einer einzelnen Tabelle stammen.
– Standardmäßig werden ALLSELECTED() von all Spalten in orderByandpartitionBy.
axis (Optional) Eine Achse in der visuellen Form. Nur in visuellen Berechnungen verfügbar, and ersetzt relation.
orderBy (Optional) Eine ORDERBY() Klausel, die die Spalten enthält, die define, wie jede Partition sortiert wird.
If weggelassen:
- relation muss explizit angegeben werden.
– Standardmäßig wird jede Spalte in relation sortiert, die bereits in notangegeben partitionBy ist.
blanks (Optional) Eine Aufzählung, die definiert, wie blankvalues beim Sortieren behandelt wird.
Die unterstützten values sind:
  • DEFAULT (Standard-value), wobei das Verhalten für numerische valuesblankvalues zwischen Null and negativen valuessortiert werden. Das Verhalten für Zeichenfolgen wird blankvalues vor all Zeichenfolgen sortiert, einschließlich leerer Zeichenfolgen.
  • FIRSTwerden Leerzeichen immer am Anfang sortiert, unabhängig von aufsteigender or absteigender Sortierreihenfolge.
  • LASTwerden Leerzeichen immer am Ende sortiert, unabhängig von aufsteigender or absteigender Sortierreihenfolge.

Hinweis: Wenn blanksand Parameter leer in ORDERBY() Funktion für einzelne Ausdrücke angegeben wird, hat blanks für einzelne orderBy Ausdruck Vorrang für den relevanten orderBy Ausdruck, andorderBy Ausdrücke, ohne blanks angegeben zu werden, berücksichtigt blanks Parameter für die übergeordnete Window-Funktion.
partitionBy (Optional) Eine PARTITIONBY() Klausel, die die Spalten enthält, die define, wie relation partitioniert werden.
If weggelassen, wird relation als einzelne Partition behandelt.
matchBy (Optional) Eine MATCHBY() Klausel, die die Spalten enthält, die define, wie Daten übereinstimmen, and die aktuelle Zeile identifizieren.
reset (Optional) Nur in visuellen Berechnungen verfügbar. Gibt an, if die Berechnung zurückgesetzt wird, and auf welcher Ebene der Spaltenhierarchie des visuellen Shapes. Akzeptierte values sind: NONE, LOWESTPARENT, HIGHESTPARENT, or eine ganze Zahl. Das Verhalten hängt von der ganzen Zahl sign:
- If Null or weggelassen, die Berechnung wird not zurückgesetzt. Entspricht NONE.
- If positiv, identifiziert die ganze Zahl die Spalte beginnend mit der höchsten, unabhängig von Korn. HIGHESTPARENT entspricht 1.
- If negativ, identifiziert die ganze Zahl die Spalte beginnend vom niedrigsten, relativ zum aktuellen Korn. LOWESTPARENT entspricht -1.

value zurückgeben

Die rownumber Nummer für den aktuellen Kontext.

Bemerkungen

Jede orderBy, partitionBy- andmatchBy Spalte muss über eine entsprechende äußere value verfügen, um define der aktuellen Zeile zu helfen, auf der sie ausgeführt werden soll, mit dem folgenden Verhalten:

  • If es genau eine entsprechende äußere Spalte gibt, wird dessen value verwendet.
  • If es keine entsprechende äußere Spalte gibt, dann:
    • ROWNUMBER bestimmen firstallorderBy, partitionBy, andmatchBy Spalten ohne entsprechende äußere Spalte.
    • Für jede Kombination vorhandener values für diese Spalten im übergeordneten Kontext ROWNUMBER wird ROWNUMBER ausgewertet, and eine Zeile zurückgegeben wird.
    • ROWNUMBERendgültige Ausgabe ist eine union dieser Zeilen.
  • If mehr als eine entsprechende äußere Spalte vorhanden ist, wird ein error zurückgegeben.

If matchBy vorhanden ist, versucht ROWNUMBER, Spalten in matchByandpartitionBy zur Idenfität der aktuellen Zeile zu verwenden. If die in orderByandpartitionBy angegebenen Spalten nicht eindeutig jede Zeile in relationidentifizieren können, dann:

  • ROWNUMBER versucht, die geringste Anzahl zusätzlicher Spalten zu find, die erforderlich sind, um jede Zeile eindeutig zu identifizieren.
  • If diese Spalten gefunden werden können, ROWNUMBER
    • Versuchen Sie, die geringste Anzahl zusätzlicher Spalten zu find, die erforderlich sind, um jede Zeile eindeutig zu identifizieren.
    • Fügen Sie diese neuen Spalten automatisch an orderBy Klausel an.
    • Sortieren Sie jede Partition mithilfe dieser neuen Gruppe von orderBy Spalten.
  • If diese Spalten nicht gefunden werden können, and die Funktion zur Laufzeit eine Bindung erkennt, wird eine error zurückgegeben.

reset können nur in visuellen Berechnungen verwendet werden, and können nicht in Kombination mit orderByorpartitionByverwendet werden. If reset vorhanden ist, können axis angegeben werden, aber relation können nicht angegeben werden.

Beispiel 1 – berechnete Spalte

Die folgende DAX Abfrage:

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

Gibt eine Tabelle zurück, die jede Geografie mit demselben EnglishCountryRegionName nach ihrem StateProvinceName and City eindeutig bewertet.

Beispiel 2 – visuelle Berechnung

Die folgende visuelle Berechnung DAX Abfragen:

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

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

Erstellen Sie zwei Spalten, rank die die einzelnen month eindeutig durch den Gesamtumsatz month, sowohl innerhalb jedes and, den gesamten Verlauf.

Der folgende Screenshot zeigt die visuelle Matrix and den ausdruck der visuellen Berechnung first:

DAX visuelle Berechnung

INDEX ORDERBY PARTITIONBY WINDOW RANK