分析窗口函数概览
DLI所支持的分析窗口函数如分析窗口函数介绍所示。
函数 |
命令格式 |
返回值 |
功能简介 |
---|---|---|---|
cume_dist() |
DOUBLE |
用于求累计分布,相当于求分区中大于等于或小于等于当前行的数据在分区中的占比。 |
|
first_value(col) |
参数的数据类型 |
返回结果集中某列第一条数据的值。 |
|
last_value(col) |
参数的数据类型 |
返回结果集中某列最后一条数据的值。 |
|
lag (col,n,DEFAULT) |
参数的数据类型 |
用于统计窗口内往上第n行值。第一个参数为列名,第二个参数为往上第n行(可选,默认为1),第三个参数为默认值(当往上第n行为NULL时候,取默认值,如不指定,则为NULL)。 |
|
lead (col,n,DEFAULT) |
参数的数据类型 |
用于统计窗口内往下第n行值。第一个参数为列名,第二个参数为往下第n行(可选,默认为1),第三个参数为默认值(当往下第n行为NULL时候,取默认值,如不指定,则为NULL)。 |
|
percent_rank() |
DOUBLE |
为窗口的ORDER BY子句所指定列中值的返回秩,但以介于0和1之间的小数形式表示,计算方法为 (RANK - 1)/(- 1)。 |
|
rank() |
INT |
计算一个值在一组值中的排位。如果出现并列的情况,RANK函数会在排名序列中留出空位。 |
|
row_number() over (order by col_1[,col_2 ...]) |
INT |
为每一行指派一个唯一的编号。 |