ROW_NUMBER

ROW_NUMBER 根据表达式的值对维成员进行排序。此函数返回维成员的序列号。

ROW_NUMBER 为每个维成员指定唯一排名;对于相同值,随机排名。例如 ROW_NUMBER 始终为一组五个维成员返回 1, 2, 3, 4, 5,即使它们的值都相同。

返回值

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

dimension 是正在对其成员进行排名的维。

hierarchydimension 的层次。否则,使用默认层次。

ORDER BY 提供了排名的基础。您可以加入任何附加 ORDER BY 子句,在排序中的任何节点断开。

expression 提供作为排名的基础的值。

ASC 从最小到最大值创建排名。

DSC 从最大到最小值创建排名。

NULLS FIRST 首先列出带有空值的成员。

NULLS LAST 最后列出带有空值的成员。

WITHIN 选择一组进行排名的相关维成员。

PARENT 对具有相同父成员的同级成员进行排名。

LEVEL 对所有同级成员进行排名。

ANCESTOR AT LEVEL level 对在指定级别具有相同父成员的同级成员进行排名。

示例

以下示例根据 UNITS 度量的值对每个区域内的客户进行排名。Ministry of Intl. Trad Nagano 和 KOSH Entrpr Bristol 的 UNITS 的值相同,但是将它们随机排为 3.004.00

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

ROW_NUMBER 函数示例
客户
级别
单位
行号
亚太地区 REGION
21,764.91
日本 WAREHOUSE
10,930.17
4.00
澳大利亚 WAREHOUSE
5,371.84
3.00
香港 WAREHOUSE
2,799.93
2.00
新加坡 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_RANKDENSE_RANKRANK