关注
表结构 create table student_score (
name string,
scores Map<string, int>
)
ROW FORMAT delimited
fields terminated by '\t'
COLLECTION ITEMS TERMINATED BY ','
MAP KEYS TERMINATED BY ':'
stored as textfile
; 模拟数据并导入 zhangsan math:90,english:60
lisi chinese:80,math:66,english:77
wangwu chinese:66,math:55,english:80load data local inpath '/home/hadoop/score.txt' overwrite into table student_score; 查询语句 思路: 查询结果中要求包含课程名和成绩,那么只能将两个合并在一起,成绩在前,课程名在后。接下来对那么分组,使用max,min,avg聚合求结果。 只产生一个Hive job。 with t1 as (
select
name,
course_name,
course_value
from student_score
lateral view explode(scores) score_map as course_name, course_value
)
select
name,
split(max(score), '-')[1] max_course_name,
split(max(score), '-')[0] max_course_score,
split(min(score), '-')[1] min_course_name,
split(min(score), '-')[0] min_course_score,
avg(split(score, '-')[0]) avg
from (
select
name,
concat(course_value, '-', course_name) score
from t1
) t2
group by name
;
查看原帖
点赞 评论
相关推荐
查看15道真题和解析 点赞 评论 收藏
分享
01-04 20:58
淮北师范大学 Java 点赞 评论 收藏
分享
牛客热帖
更多
正在热议
更多
# 在大厂上班是一种什么样的体验 #
2954次浏览 41人参与
# 找工作的破防时刻 #
251171次浏览 1947人参与
# 程序员找工作至少要刷多少题? #
6332次浏览 104人参与
# OPPO求职进展汇总 #
770535次浏览 5395人参与
# 论秋招对个人心气的改变 #
4450次浏览 76人参与
# 程序员能干到多少岁? #
4634次浏览 72人参与
# 为了减少AI幻觉,你注入过哪些设定? #
1296次浏览 41人参与
# 刚入职的你踩过哪些坑 #
3035次浏览 67人参与
# 一张图晒一下你的AI员工 #
2137次浏览 51人参与
# 牛客AI体验站 #
2286次浏览 67人参与
# AI Coding的使用心得 #
1827次浏览 45人参与
# 我现在比当时_,你想录用我吗 #
2952次浏览 46人参与
# 关于春招/暑期实习,你想知道哪些信息? #
3053次浏览 67人参与
# 晒晒你司的新年福利 #
2908次浏览 51人参与
# 实习,不懂就问 #
163894次浏览 1458人参与
# 软开人,秋招你打算投哪些公司呢 #
180259次浏览 1383人参与
# 帆软软件工作体验 #
12612次浏览 68人参与
# 牛客租房专区 #
146505次浏览 1462人参与
# 从哪些方向判断这个offer值不值得去? #
51058次浏览 348人参与
# 简历无回复,你会继续海投还是优化再投? #
138788次浏览 875人参与

