hive中order by 后不可以直接跟函数

hive中order by 后直接跟函数会报错,但是给函数设置别名后可以正常输出,底层原理是什么呢

order by是把结果集进行排序,就是select 里面的内容。

order by 对最终结果进行排序, 不计算

select t.a,t.b,row_number()over(partition by t.a order by t.c) rn from table t order by rn;
你说的是这种情况吗?