我的数据集如下。
population_size
我想在HIVE中的SQL中给它一个如下的数字。
population_size
像row_number,rank这样的传统函数并没有给我想要的结果。
答案 0 :(得分:0)
我认为您正在寻找dense_rank()
:
select t.*, dense_rank() over (order by val) as ranking
from t;
如果您不想按值本身排序,而是按位置排序:
select t.*, dense_rank() over (order by minid) as ranking
from (select t.*, min(id) over (partition by val) as minid
from t
) t;