Función de script: WRank
WRank() evalúa las filas de una tabla en el script de carga y, para cada fila, muestra la posición relativa del valor del campo evaluado en el script de carga. Al evaluar la tabla, la función compara el resultado con el resultado de las otras filas que contienen la partición actual y devuelve la clasificación de la fila actual dentro del segmento.
WRank sólo se puede usar en una función Window. La función Window debe incluir un tipo de ordenación y una expresión de ordenación . El ranking o clasificación se aplica a la expresión de ordenación.
Sintaxis:
WRank ([mode[, fmt]])
Tipo de datos que devuelve: dual
Argumentos:
Argumento | Descripción |
---|---|
mode | Opcionalmente, especifica la representación numérica del resultado de la función. |
fmt | Opcionalmente, especifica la representación de texto del resultado de la función. |
TOTAL |
Si la tabla es unidimensional, o si el script está precedido por el calificador TOTAL, la función se evalúa en toda la columna. Si la tabla o el equivalente de la tabla tiene múltiples dimensiones verticales, la partición actual incluirá solo filas con los mismos valores que la fila actual en todas las columnas de dimensiones, excepto la columna que muestra la última dimensión en el orden de clasificación entre campos. |
La clasificación se devuelve como un valor dual, que en el caso de que cada fila tenga una clasificación única, es un número entero entre 1 y el número de filas de la partición actual.
En caso de que varias filas compartan un mismo ranking, el texto y la representación numérica pueden controlarse mediante los parámetros mode y fmt.
mode
El primer argumento, mode, puede tomar los siguientes valores:
Valor | Descripción |
---|---|
0 (por defecto) |
Si todos los rangos dentro del grupo compartido caen dentro del extremo más bajo del valor de en medio del ranking entero, todas las filas reciben el rango menor dentro del grupo compartido. Si todos los rangos dentro del grupo compartido caen dentro del extremo más alto del valor de en medio del ranking entero, todas las filas reciben el rango menor dentro del grupo compartido. Si todos los rangos dentro del grupo compartido se salen del valor central del ranking completo, todas las filas reciben el valor correspondiente a la media del ranking superior e inferior en toda la partición. |
1 | Rango más bajo en todas las filas. |
2 | Rango promedio en todas las filas. |
3 | Rango más alto en todas las filas. |
4 | Rango más bajo en la primera fila, incrementado por uno para cada fila. |
fmt
El segundo argumento, fmt, puede tomar los siguientes valores:
Valor | Descripción |
---|---|
0 (por defecto) | Valor bajo - valor alto en todas las filas (por ejemplo 3 - 4). |
1 | Valor bajo en todas las filas. |
2 | Valor más bajo en la primera fila, espacio en blanco en las siguientes filas. |
El orden de las filas para el mode 4 y fmt 2 viene determinado por el orden de carga de los campos de tabla.
Ejemplo: agregar un campo clasificado
Ejemplo: agregar un campo clasificado usando fmt para un resultado de un solo dígito
Ejemplo: agregar un campo clasificado con múltiples particiones
Limitaciones
WRank tiene las siguientes limitaciones:
-
Si su valor fmt es 0 y desea utilizar la parte de texto del resultado dual para WRank, debe usar Text() con Window(WRank). Por ejemplo: Text(Window(WRank(0), Unit, 'DESC', Age)) as UnitWRankedByAgeText.