ROW_NUMBER ordena os membros de uma dimensão com base nos valores de uma expressão. A função retorna os números da seqüência dos membros da dimensão.
ROW_NUMBER designa uma classificação exclusiva a cada membro da dimensão; para valores idênticos, a classificação é arbitrária. Por exemplo, ROW_NUMBER sempre retornará 1, 2, 3, 4, 5 para uma série de cinco membros da dimensão, mesmo se todos eles tiverem o mesmo valor.
NUMBER
ROW_NUMBER (ntile_expression) OVER HIERARCHY
( dimension | hierarchy
ORDER BY expression [ASC | DSC] [NULLS {FIRST | LAST}]...
WITHIN {PARENT | LEVEL | ANCESTOR AT LEVEL level}
)
ntile_expression não é implementado nesta função.
dimensão é a dimensão cujos membros estão sendo classificados.
hierarquia é uma hierarquia da dimensão. Caso contrário, a hierarquia default é usada.
ORDER BY fornece a base para a classificação. Você pode fornecer cláusulas ORDER BY adicionais para interromper ligações na ordem.
expressão fornece os valores a serem usados como a base para as classificações.
ASC cria a classificação dos menores valores de dados para os maiores.
DSC cria a classificação dos maiores valores de dados para os menores.
NULLS FIRST lista os membros com os valores nulos primeiro.
NULLS LAST lista os membros com os valores nulos por último.
WITHIN seleciona um conjunto de membros de dimensão relacionados a serem classificados.
PARENT classifica membros no mesmo nível com o mesmo pai.
LEVEL classifica todos os membros no mesmo nível.
ANCESTOR AT LEVEL nível classifica todos os membros no mesmo nível e com o mesmo pai em um nível especificado.
O exemplo a seguir classifica clientes em cada região com base nos valores da medida UNITS. Ministry of Intl. Trad Nagano e KOSH Entrpr Bristol têm o mesmo valor para UNITS, mas elas são arbitrariamente classificadas de 3,00 e 4,00.
ROW_NUMBER () OVER HIERARCHY (GLOBAL.CUSTOMER.SHIPMENTS_ROLLUP ORDER BY GLOBAL.UNITS_CUBE.UNITS NULLS LAST WITHIN ANCESTOR AT LEVEL GLOBAL.CUSTOMER.REGION)
Cliente |
Nível |
Unidades |
Número de linha |
|---|---|---|---|
| Pacífico Asiático | REGION | 21,764.91 |
nulo |
| Japão | WAREHOUSE | 10,930.17 |
4.00 |
| Austrália | WAREHOUSE | 5,371.84 |
3.00 |
| Hong Kong | WAREHOUSE | 2,799.93 |
2.00 |
| Cingapura | 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 |
| KOSH Entrpr Bristol | SHIP_TO | 2,699.94 |
4.00 |
| Ministry of Intl. Trad Nagano | 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 |
AVERAGE_RANK, DENSE_RANK, RANK
Copyright © 2003, 2007, Oracle. Todos os direitos reservados.