DENSE_RANK

DENSE_RANK ordena los miembros de una dimensión según los valores de una expresión. Esta función devuelve los números de secuencia de los miembros de la dimensión.

DENSE_RANK asigna la misma clasificación media a los valores idénticos. Por ejemplo, DENSE_RANK puede devolver 1, 2, 3, 3, 5 en una serie de cinco miembros de dimensión.

Valor de Retorno

NUMBER

Sintaxis

DENSE_RANK (ntile_expression) OVER HIERARCHY
     ( dimension | hierarchy
       ORDER BY expression [ASC | DSC] [NULLS {FIRST | LAST}]...
       WITHIN {PARENT | LEVEL | ANCESTOR AT LEVEL level}
     )

Argumentos

ntile_expression no se implementa en esta función.

dimension es la dimensión cuyos miembros se clasifican.

hierarchy es una jerarquía de dimension. Si no se especifica, se utiliza la jerarquía por defecto.

ORDER BY proporciona la base para la clasificación. Puede proporcionar cláusulas ORDER BY adicionales para deshacer los empates en el orden.

expression proporciona los valores que se utilizan como base de las clasificaciones.

ASC crea la clasificación de los valores de datos más pequeños a los más grandes.

DSC crea la clasificación de los valores de datos más grandes a los más pequeños.

NULLS FIRST muestra primero los miembros con valores nulos.

NULLS LAST muestra al final los miembros con valores nulos.

WITHIN selecciona el juego de miembros de la dimensión relacionados que se debe clasificar.

PARENT clasifica los miembros al mismo nivel con el mismo principal.

LEVEL clasifica todos los miembros al mismo nivel.

ANCESTOR AT LEVEL nivel clasifica todos los miembros al mismo nivel y con el mismo principal al nivel especificado.

Ejemplo

El siguiente ejemplo clasifica los clientes de cada región según los valores de la medida UNITS. Ministry of Intl. Trad Nagano y KOSH Entrpr Bristol tienen el mismo valor para UNITS, por lo que ambos reciben la clasificación 3.00. La siguiente clasificación es 5.00.

DENSE_RANK () OVER HIERARCHY (GLOBAL.CUSTOMER.SHIPMENTS_ROLLUP ORDER BY GLOBAL.UNITS_CUBE.UNITS NULLS LAST WITHIN ANCESTOR AT LEVEL GLOBAL.CUSTOMER.REGION)

Ejemplo de la Función DENSE_RANK
Cliente
Nivel
Unidades
Clasificación de Densidad
Pacífico Asiático REGION
21.764,91
nulo
Japón WAREHOUSE
10.930,17
4.00
Australia WAREHOUSE
5.371,84
3.00
Hong Kong WAREHOUSE
2.799,93
2.00
Singapur WAREHOUSE
2.662,96
1.00
KOSH Entrpr Wanchai SHIP_TO
2.799,93
8.00
Computer Services Tokyo SHIP_TO
2.761,41
7.00
Ministry of Intl. Trad Nagoya SHIP_TO
2.754,14
6.00
KOSH Entrpr Tokyo SHIP_TO
2.714,69
5.00
Ministry of Intl. Trad Nagano SHIP_TO
2.699,94
3.00
KOSH Entrpr Bristol SHIP_TO
2.699,94
3.00
KOSH Entrpr Brisbane SHIP_TO
2.673,73
2.00
Computer Warehouse Singapore SHIP_TO
2.662,96
1.00

Temas Relacionados

AVERAGE_RANK, RANK, ROW_NUMBER