问题描述
我已经创建了一个 hive 表
CREATE external TABLE test.partordtst (name string,age string,priority string)
ROW FORMAT DELIMITED
FIELDS TERMINATED BY '~'
LOCATION '/DataprovidersDEV/Tom/Hive/Test/';
用于创建表的文件中的值如下
jijo~10~10
jijo~10~2
jijo~10~3
jijo~09~2
jijo~08~3
jijo~07~4
jijo~06~5
jijo~05~6
我写了一个查询来选择分区中优先级最低的记录
select * from
(
select partordtst.*,row_number() over(partition by name,age order by priority asc) rn
from partordtst
)abc
where rn=1
order by name,age;
我得到的输出如下
jijo 05 6 1
jijo 06 5 1
jijo 07 4 1
jijo 08 3 1
jijo 09 2 1
jijo 10 10 1
在输出中我期望以下值
jijo 10 2 1
代替
jijo 10 10 1
为什么 hive 没有正确进行排序。准确地说,为什么 asc
不起作用?。
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)