
Hive函数实战
文章平均质量分 54
Hive函数实战
韩家小志
这个作者很懒,什么都没留下…
展开
-
⭐️⭐️⭐️⭐️⭐️互相关注&可能认识的人
需求六:互相关注问题假设现在有一张表,叫table_relation里面只有两个字段,from_user,to_user, 代表关注关系从from指向to,即from_user关注了to_user。求互相关注解决方式一:自关联缺点:当用户量到了亿级别,关注关系到了百亿级别,join起来的效率就会很低。select a.from_user, a.to_user, if(b.from_user is not null, 1, 0) as is_friendfrom table原创 2021-10-22 20:05:22 · 482 阅读 · 1 评论 -
⭐️⭐️⭐️⭐️⭐️连续时间区间合并&间隔连续&日期交叉问题
tableA 存储了一所大学所有人的所有科目的考试成绩,共4列:学号 ( stu_num ),考试科目(subject),考试成绩( score )等级 ( level )(共SABCD五个值),考试时间 ( time ),求:第一次考试的考试成绩等级为A,其它考试成绩等级都为B的学号。select stu_numfrom (select stu_num ,part_cnt ,sum(case when t.rank=1 and t.le.原创 2021-10-08 20:33:12 · 671 阅读 · 0 评论 -
⭐️⭐️⭐️⭐️⭐️连续登录天数plus(含最大连续登录天数、当前连续登录天数、最大连续未登录天数问题)
DROP TABLE IF EXISTS py_tmpdb.hzy_0930_test;-- 用户、新增日期、活跃日期create table py_tmpdb.hzy_0930_test as select '张三' as name,'2021-01-01' as install_date, '2021-01-01' as active_dateunion allselect '张三' as name,'2021-01-01' as install_date, '2021-01-02' as a原创 2021-09-30 18:13:46 · 350 阅读 · 0 评论 -
⭐️⭐️每个部门员工薪资最高的前2名--排序分析开窗函数
需求四:统计实现每个部门员工薪资最高的前2名分析: 出现每个:分区还是分组? 分区select * from (select empno, ename, salary, deptno, row_number() over (partition by deptno order by salary desc) as rnfrom tb_emp) tmpwhere tmp.rn < 3;...原创 2020-11-23 09:30:44 · 894 阅读 · 0 评论 -
⭐️⭐️连续登录N天的用户(N>=2)/用户访问路径--位置分析开窗函数
需求二:根据以下数据实现统计:连续登录N天的用户(N>=2)--需求二:根据以下数据实现统计:连续登录N天的用户(N>=2)输入:A,2019-08-22B,2019-08-22C,2019-08-22A,2019-08-23C,2019-08-23A,2019-08-24B,2019-08-24输出:连续2天登录:A C连续3天登录:A连续两天登录:tomorrow = nextLogin,说明第二天也登录,连续登录两天连续两天登录:tomorrow =原创 2020-11-23 09:29:55 · 379 阅读 · 0 评论 -
⭐️⭐️每个用户每个月累计的总金额--聚合分析开窗函数
需求一:根据以下数据实现统计:每个用户每个月累计的总金额输入:A,2015-01,5A,2015-01,15B,2015-01,5A,2015-01,8B,2015-01,25A,2015-01,5A,2015-02,4A,2015-02,6B,2015-02,10B,2015-02,5A,2015-03,7A,2015-03,9B,2015-03,11B,2015-03,6输出:+-------------+----------+---------+----------原创 2020-11-23 09:30:10 · 1307 阅读 · 0 评论