WRank - Fonction de script
WRank() évalue les lignes d'une table dans le script de chargement et, pour chaque ligne, affiche la position relative de la valeur du champ évalué dans le script de chargement. Lors de l'évaluation de la table, la fonction compare le résultat à celui des autres lignes contenant la partition active et renvoie le classement de la ligne active dans ce segment.
WRank peut uniquement être utilisé dans une fonction Window. La fonction Window doit inclure un type de tri et une expression de tri. Le classement est appliqué sur l'expression de tri.
WRank ([mode[, fmt]])
double
Argument | Description |
---|---|
mode | Spécifie éventuellement la représentation numérique du résultat de la fonction. |
fmt | Spécifie éventuellement la représentation textuelle du résultat de la fonction. |
TOTAL |
Si la table est unidimensionnelle ou si le script est précédé du qualificateur TOTAL, la fonction est évaluée sur la colonne toute entière. Si la table ou l'équivalent en tableau comporte plusieurs dimensions verticales, la partition active comprend uniquement les lignes contenant les mêmes valeurs que la ligne active dans toutes les colonnes de dimensions, à l'exception de la colonne affichant la dernière dimension dans l'ordre de tri inter-champs. |
Le classement est renvoyé sous forme de valeur double, qui est, dans le cas d'un classement unique pour chaque ligne, un entier compris entre 1 et le nombre de lignes dans la partition active.
Dans le cas où plusieurs lignes partagent le même classement, il est possible de contrôler la représentation alphanumérique à l'aide des paramètres mode et fmt.
mode
Le premier argument, mode, admet les valeurs suivantes :
Valeur | Description |
---|---|
0 (par défaut) |
Si tous les rangs du groupe commun sont inférieurs à la valeur médiane du classement total, toutes les lignes obtiennent le rang le plus bas du groupe. Si tous les rangs du groupe commun sont supérieurs à la valeur médiane du classement total, toutes les lignes obtiennent le rang le plus élevé du groupe. Si les rangs du groupe commun se trouvent de part et d'autre de la valeur médiane, toutes les lignes obtiennent la valeur correspondant à la moyenne du classement supérieur et du classement inférieur de la partition toute entière. |
1 | Rang le plus bas sur toutes les lignes. |
2 | Rang moyen sur toutes les lignes. |
3 | Rang le plus élevé sur toutes les lignes. |
4 | Rang le plus bas sur la première ligne, puis incrémenté d'une unité pour chaque ligne. |
fmt
Le second argument, fmt, admet les valeurs suivantes :
Valeur | Description |
---|---|
0 (par défaut) | Valeur faible - valeur élevée sur toutes les lignes (par exemple 3 - 4). |
1 | Valeur faible sur toutes les lignes. |
2 | Valeur faible sur la première ligne, vide sur les lignes suivantes. |
L'ordre des lignes pour le mode 4 et le format fmt 2 est déterminé par l'ordre de tri des champs de table.
Exemple - Ajout d'un champ classé
Exemple - Ajout d'un champ classé via fmt pour un résultat d'un seul chiffre
Exemple - Ajout d'un champ classé avec plusieurs partitions
Limitations
WRank présente les limitations suivantes :
-
Si votre valeur fmt est égale à 0 et que vous souhaitez utiliser la partie texte du résultat double pour WRank, vous devez utiliser Text() avec Window(WRank). Par exemple : Text(Window(WRank(0), Unit, 'DESC', Age)) as UnitWRankedByAgeText.