WRank – Skriptfunktion
WRank() berechnet die Zeilen einer Tabelle im Ladeskript und zeigt für jede Zeile die relative Position des Wertes des Felds an, das im Ladeskript ausgewertet wird. Beim Auswerten der Tabelle vergleicht die Funktion das Ergebnis mit dem Ergebnis für andere Zeilen, die die aktuelle Partition enthalten, und liefert die Rangfolge der aktuellen Zeile innerhalb des Segments.
WRank kann nur in einer Window-Funktion verwendet werden. Die Window-Funktion muss einen Sortiertyp und eine Sortierformel enthalten. Die Rangfolge wird auf die Sortierformel angewendet.
Syntax:
WRank ([mode[, fmt]])
Rückgabe Datentyp: dual
Argumente:
Argument | Beschreibung |
---|---|
mode | Gibt optional die numerische Repräsentation des Funktionsergebnisses an. |
fmt | Gibt optional die Textrepräsentation des Funktionsergebnisses an. |
TOTAL |
Wenn die Tabelle nur eine Dimension hat oder dem Skript der Qualifikator TOTAL vorangestellt ist, wird die Funktion über die gesamten Spalte ausgewertet.Hat das Diagramm dagegen mehrere vertikale Dimensionen, so umfasst die aktuelle Partition nur Zeilen, deren Werte in allen Dimensionsspalten mit der aktuellen Zeile übereinstimmen, mit Ausnahme der Spalte mit der letzten Dimension in der feldübergreifenden Sortierfolge. |
Die Rangfolge wird als dualer Wert zurückgegeben. Hat jede Zeile eine eindeutige Rangfolge, wird diese als ganze Zahl zwischen 1 und der Zahl der Zeilen der aktuellen Partition ausgegeben.
Teilen sich mehrere Zeilen denselben Rang, kann das Ergebnis der Funktion durch die Parameter mode und fmt modifiziert werden.
mode
Das erste Argument mode kann folgende Werte annehmen:
Wert | Beschreibung |
---|---|
0 (Standard) |
Fallen die Ränge alle unterhalb des mittleren Ranges der gesamten Rangfolge, erhalten alle Zeilen der Gruppe den geringsten innerhalb dieser Gruppe auftretenden Rang. Fallen die Ränge alle oberhalb des mittleren Ranges der gesamten Rangfolge, erhalten alle Zeilen der Gruppe den höchsten innerhalb dieser Gruppe auftretenden Rang. Geht die Gruppe der Zeilen gleichen Rangs über den mittleren Rang der gesamten Rangfolge hinweg, erhalten alle Zeilen der Gruppe den mittleren Rang der gesamten Rangfolge in der ganzen Partition. |
1 | Alle Zeilen erhalten den niedrigsten Rang. |
2 | Alle Zeilen erhalten den mittleren Rang. |
3 | Alle Zeilen erhalten den höchsten Rang. |
4 | Die erste Zeile erhält den niedrigsten Rang, für die Ränge nachfolgender Zeilen wird jeweils eins addiert. |
fmt
Das zweite Argument fmt kann folgende Werte annehmen:
Wert | Beschreibung |
---|---|
0 (Standard) | Niedrigster Wert – höchster Wert in allen Zeilen (z. B. 3 - 4). |
1 | Niedrigster Wert in allen Zeilen. |
2 | Niedrigster Wert in der ersten Zeile, leere Zeilen in allen weiteren Zeilen. |
Die für mode 4 und fmt 2 maßgebliche Zeilenreihenfolge wird durch die Ladereihenfolge der Tabellenfelder bestimmt.
Beispiel – Hinzufügen eines Felds mit Rangfolge
Beispiel – Hinzufügen eines Felds mit Rangfolge mit fmt für ein einstelliges Ergebnis
Beispiel – Hinzufügen eines Felds mit Rangfolge mit mehreren Partitionen
Beschränkungen
WRank weist die folgenden Beschränkungen auf:
-
Wenn Ihr fmt-Wert 0 ist und Sie den Textteil des dualen Ergebnisses für WRank verwenden möchten, müssen Sie Text() mit Window(WRank) verwenden. Beispiel: Text(Window(WRank(0), Unit, 'DESC', Age)) as UnitWRankedByAgeText.