[]
        
(Showing Draft Content)

DENSERANKW

概述

计算一组行中每一列的名次值 。

语法

分析表达式

DENSERANKW(<table>[,PARTITIONBY(<expression>[,[expression] [,...]])] ,ORDERBY(<expresion> [(ASC|DESC)] [,<expression> [(ASC|DESC)] [,...] ] ))

参数

参数

定义

table

进行计算的表,该表包含计算表达式的行。

PARTITION BY 子句

将查询结果集划分为多个分区。

窗口函数分别应用于每个分区,并为每个分区重新启动计算。

如果未指定 PARTITION BY,则此函数将查询结果集的所有行视为单个分区。

ORDER BY 子句

定义结果集的每个分区内行的逻辑顺序。

也就是说,它指定了执行窗口函数计算的逻辑顺序。

如果未指定,则默认顺序为 ASC,且开窗函数将使用分区中的所有行。

返回值

返回一个整数。

示例

以 DimProductCategory 表的 EnglishProductCategoryName列进行分片,在DimProduct 表中进行滑窗运算。

返回当前行在当前以及之前行中的排名。

分析表达式

DENSERANKW
(
    'DimProduct',
    PARTITIONBY('DimProductCategory'[EnglishProductCategoryName]),
    ORDERBY('DimProduct'[ProductName])
)

备注

该函数在排序相同的情况下会出现并列情况。例如:1,1,2。