![](https://img-blog.csdnimg.cn/20201014180756918.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
SQL
大地你王哥
这个作者很懒,什么都没留下…
展开
-
将不同时间点的登录状态记录转化为不同时间段的相同登录状态SQL求解
hive sql求解连续登录状态问题原创 2023-12-01 14:55:39 · 642 阅读 · 0 评论 -
26.各品类中商品价格的中位数(ceil与floor函数)
ceil与floor函数的应用原创 2024-01-26 15:20:12 · 383 阅读 · 0 评论 -
28查询有新注册用户的当天的新用户数量、新用户的第一天留存率(lead+rank+开窗函数)
使用lead+rank+开窗函数查询有新注册用户的当天的新用户数量、新用户的第一天留存率原创 2024-01-26 15:21:46 · 381 阅读 · 0 评论 -
29求出商品连续售卖的时间区间
灵活使用排序函数+开窗函数求出商品连续售卖的时间区间问题原创 2024-01-26 15:23:04 · 452 阅读 · 0 评论 -
38连续签到领金币数问题求解
连续签到领金币数问题求解原创 2024-01-26 15:24:45 · 396 阅读 · 0 评论 -
48.排列问题求解
思路分析:通过为每一队分配一个id,join条件要求t1.num < t2.num实现相同两队只比一次。原创 2023-10-16 17:39:34 · 120 阅读 · 0 评论 -
45.复购率问题求解
复购率问题求解原创 2023-10-16 16:25:26 · 106 阅读 · 0 评论 -
44.日期交叉问题(品牌活动天数计算)
交叉日期的品牌活动天数问题求解原创 2023-10-16 16:13:57 · 139 阅读 · 0 评论 -
43.间断连续登录用户问题
首先需要对数据做格式化和去重操作user_id,login_date。(3)给每一个会话的建立一个唯一标识(时间差不超过1天的标识相同)(4)user_id,flag分组下最大最小时间差就是连续登录时间。(1)同会话划分问题一样,先求上一次登录日期。本题特点在于间断一天登录也认为是连续登录。(2)对时间差打标签flag。原创 2023-10-16 15:49:42 · 87 阅读 · 0 评论 -
42.会话划分问题求解(打标)
(3)对flag开窗求和,属于同一会话的和相同。(2)为>60s的设置一个初始会话的标签flagif(view_timestamp - last_view_timestamp > 60, 1, 0) flag。(4)使用user_id与flag拼接会话id,结果就是相邻两次会话间隔不超过60s的id相同。(1)为每一次浏览找到他的上一次浏览时间。原创 2023-10-16 15:39:13 · 96 阅读 · 0 评论 -
40.同时最大在线人数问题求解(炸裂map)
(1)对登录、登出数据构建map结构map(1, login_ts, -1, logout_ts),使用炸裂函数对该map做炸裂处理。(2)炸裂后成为了两列,一列存储1or-1表示登录登出(k),一列存储的是时间,既有登录的又有登出的。(3)取出上一步计算出的最大值就是同时最大在线人数。按照时间排序求k的累计值,要求窗口范围到当前行。原创 2023-10-16 15:15:36 · 162 阅读 · 0 评论 -
4.查询用户的累计消费金额及VIP等级(开窗函数的使用)
开窗函数的使用原创 2023-10-16 15:00:39 · 392 阅读 · 0 评论 -
1.查询累积销量排名第二的商品(开窗函数的使用)
开窗函数的使用原创 2023-10-16 14:50:51 · 97 阅读 · 0 评论 -
2.查询至少连续三天下单的用户(连续登录问题求解)
(3)使用create_date与row_num求差值作为日期days字段,如果连续登录那么差值相同,(4)按照user_id与days分组计数求数量大于3的user_id就是连续登录用户。(2)开窗求user_id分组下按照create_date的排序号row_num。(1)求出每个user_id对应的create_date明细数据并去重。原创 2023-10-16 14:40:16 · 168 阅读 · 0 评论