SQL1
hive 累加求和
1)查询每个用户截止到当天,最大访问次数,累计总访问次数
2)查询每个用户截止到当月,累计总访问次数
hive 最近问题
【必会】求用户每次登录时,显示最近3次登录后共访问页面多少次
hive 分组TOPN
hive 连续N天登陆
—> 【连续登录】求连续3天登录的用户(用3种方法实现)
—> 【连续登录】求每个用户登录的最大天数
—> 【连续登录】求连续3天登录的用户,和该用户每次连续登录的开始时间
hive 起初和结束问题
—> 【必会】求用户第一次登录网站时间 和 最后一次登录网站时间—>推演出:求用户第一次登录网站时访问了哪个浏览器、最后一次登录网站时访问了哪个浏览器
SQL2
公式:
1列炸多行—>发散
(1)explode+split
(2)concat+posexplode+split
(3)select + union all
多行聚1列—> 收敛
(1)group by + case when
(2)concat + collect_set+ concat
(3)named_struct + group by + collect_set
(4)row_number 构造分组
hive 列转行 行转列
变形
hive explode与posexplode的区别
SQL3
hive 互为共同好友
hive 同时在线问题
1)直播间最大在线人数
2)直播间最大在线人数,以及时间段
hive 间隔连续登录问题
1)求每个用户最多间隔2天连续登录最大天数
2)求解连续多条记录合并问题
SQL4
hive 会话划分问题
hive 打折日期交叉问题
hive 增强聚合函数 with rollup
SQL5
hive 复购率问题
1)单个产品,每个月的复购率
2)每个产品,近三个月的复购率
hive 用户留存率
1)指定某天:2015-03-02号的次日留存率、七日留存率
2)不指定某天:首次登录后的次日,次七日留存率
SQL6
—> 查询学过编号"01"但是没有学过编号"02"的课程的同学的id
—> 查询不同课程成绩相同的学生的学生id、课程id、课程成绩
—>查询两门及其以上不及格课程的同学的id及其平均成绩
SQL7
—> 查询学生各科成绩及总成绩(总成绩要排名)
—> 查询学生单科成绩,单科总成绩,以及每位同学的总成绩(排名),并在一张表中显示
—> 查询各科成绩最高分、最低分、平均分、及格率、良好率等
—> 查询和"01"号同学学习课程不完全相同的其他同学的id
—> 查询每一门课程都大于60分的同学的id
SQL8
—> left join 特性
表1只有一个字段,为主键,整个表5条记录,表2也是一个字段,非主键字段,有8条记录。表1左关联表2,最多的情况下出来的结果集是多少条记录?
本文深入探讨Hive SQL在大数据分析中的高级应用,包括累加求和、分组TOPN、连续N天登录统计、用户留存率计算等实战案例,涵盖常见业务场景的解决方案。
3183

被折叠的 条评论
为什么被折叠?



