温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

Hive求每一年最大气温的那一天 + 温度

发布时间:2020-07-16 23:52:20 来源:网络 阅读:557 作者:zjy1002261870 栏目:大数据

2014010216
2014010410
2012010609
2012010812
2012011023
2001010212
2001010411
2013010619
2013010812
2013011023
2008010216
2008010414
2007010619
2007010812
2007011023
2010010216
2010010410
2015010649
2015010812
2015011023

create table t_wendu_line(
line string
);
load data local inpath '/root/wendu.txt' into table t_wendu_line;
求每一年最大气温的那一天 + 温度
临时数据存放在视图中
create view v_temperature_data
as
select substr(line,1,4) as year,
from_unixtime(unix_timestamp(substr(line,1,8),'yyyymmdd'),'yyyy-mm-dd') tdate
,cast(substr(line,9,2) as smallint) as temperature_num
from t_wendu_line;

select year,tdate,temperature_num
from (
select year,tdate,temperature_num,
row_number() over(partition by year order by temperature_num desc ) as rn
,rank() over(partition by year order by temperature_num desc ) as rn1
,dense_rank() over(partition by year order by temperature_num desc ) as rn2
from v_temperature_data
) tmp
where tmp.rn = 1;

2001 2001-01-02 12
2007 2007-01-10 23
2008 2008-01-02 16
2010 2010-01-02 16
2012 2012-01-10 23
2013 2013-01-10 23
2014 2014-01-02 16
2015 2015-01-06 49

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI