在Hive中,row_number() 函数完全支持自定义排序,其核心依赖于 ORDER BY 的灵活组合。下面通过一个示例来演示:

SELECT column1, column2, ...,
row_number() OVER (ORDER BY column3 ASC, column4 DESC) AS row_num
FROM table_name;
在上述查询中,row_number() 首先按照 column3 升序排列,然后按照 column4 降序排列——升序、降序以及多字段排序均可自由指定。只需调整排序条件,排名规则便会随之变化,操作十分直观。当然,实际应用中还需注意数据类型和空值处理,但这属于另一个话题。
