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 orderBy andpartitionBy daraus stammen.
If weggelassen: - orderBy muss explizit angegeben werden.– All orderBy andpartitionBy Spalten müssen vollqualifizierte and aus einer einzelnen Tabelle stammen.
– Standardmäßig werden ALLSELECTED() von all Spalten in orderBy andpartitionBy . |
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:
Hinweis: Wenn blanks and 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 firstall
orderBy
,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.
-
ROWNUMBER bestimmen firstall
- If mehr als eine entsprechende äußere Spalte vorhanden ist, wird ein error zurückgegeben.
If
matchBy
vorhanden ist, versucht ROWNUMBER, Spalten in matchBy
andpartitionBy
zur Idenfität der aktuellen Zeile zu verwenden.
If die in orderBy
andpartitionBy
angegebenen Spalten nicht eindeutig jede Zeile in relation
identifizieren 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 orderBy
orpartitionBy
verwendet 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: