数据湖探索 DLI-percent_rank:示例代码

时间:2025-02-12 14:55:48

示例代码

示例数据

为便于理解函数的使用方法,本文为您提供源数据,基于源数据提供函数相关示例。创建表salary,并添加数据,命令示例如下:
CREATE EXTERNAL TABLE salary (dept STRING, -- 部⻔名称userid string, -- 员⼯IDsal INT -- 薪⽔) ROW FORMAT DELIMITED FIELDS TERMINATED BY ',' stored as textfile;

添加数据如下:

d1,user1,1000d1,user2,2000d1,user3,3000d2,user4,4000d2,user5,5000

示例:计算员工薪水在部门内的百分比排名。

select dept, userid, sal,       percent_rank() over(partition by dept order by sal) as pr2from salary;-- 结果分析:d1 user1 1000 0.0    -- (1-1)/(3-1)=0.0d1 user2 2000 0.5    -- (2-1)/(3-1)=0.5d1 user3 3000 1.0    -- (3-1)/(3-1)=1.0d2 user4 4000 0.0    -- (1-1)/(2-1)=0.0d2 user5 5000 1.0    -- (2-1)/(2-1)=1.0
support.huaweicloud.com/sqlref-spark-dli/dli_spark_percent_rank.html