Hoveii
Hoveii
全部文章
分类
mysql(2)
Web笔记(1)
刷题(6)
未归档(1)
机器学习(9)
题解(17)
归档
标签
去牛客网
登录
/
注册
Hoveii的博客
Code for Life
全部文章
(共41篇)
题解 | #连续签到领金币#
难点:连续n次的筛选判定 解决思路:可以参考计算连续出现3次的所有数字。 构建自增序列,与原序列相减得到序列差。 序列差相同的意味着序列连续,序列差不同则意味着序列不是连续 select uid, month, sum(coin) as coin from ( ...
Mysql
2022-02-13
1
419
题解 | #统计活跃间隔对用户分级结果#
主要思路: 参考前面几道题的思路,先建立用户活跃表(临时表,使用with...as (...)语句),记录每个用户的活跃时间。 分别计算出每个用户的最早登陆时间、最近登陆时间以及总数据中的最近登陆时间。 等级划分顺序,使用case when: (1) 先筛选出流失用户(与最近登陆时间间隔大于29天...
Mysql
2022-02-08
0
359
题解 | #2021年11月每天新用户的次日留存率#
注意点: 判断用户是否为新用户(首次登陆日期,注意口径) 判断是否为次日留存(是否与首次登陆日期相差1天) 特殊情况:新用户退出时间跨天属于次日留存 主要步骤: 按用户id、进入时间、退出时间进行去重; 查询出每个用户的首次登陆时间与下次登陆时间,这里注意首次是要统计11月以前,即有些用户在...
Mysql
2022-02-08
0
379
题解 | #每篇文章同一时刻最大在看人数#
难点:瞬时计算 思路: 找出所有用户观看的时刻(包含进入与离开,注意去重)作为时间轴 计算每个时间点在观看的人数,即进入时刻不大于该时刻且离开时刻不小于该时刻 对时间点和文章id分组汇总,计算出每个时刻点每篇文章的观看人数 进一步对文章id分组汇总,计算出每篇文章在所有时刻中最大的观看人数 ...
Mysql
2022-02-03
0
415
题解 | #近一个月发布的视频中热度最高的top3视频#
视频热度计算 简要思路: 合并表,使用inner join即可。目标是提取需要的字段,并加工出部分需求字段,如:if_finish表示是否完播,if_comment表示是否评论,recent_play表示最近一天(用于筛选近一个月的数据) 筛选出近一个月,并按video_id分组汇总,计算子指标...
Mysql
2022-01-19
0
450
题解 | #国庆期间每类视频点赞量和转发量#
难点 七天内的累计值与最大值计算,使用滑动窗口,一般是窗口函数中over(xx rows n preceding),包含本身对前n项进行实时计算。 select * from ( select t.tag, t.dt, sum(t.su...
Mysql
2022-01-18
0
316
题解 | #每个创作者每月的涨粉率及截止当前的总粉丝量#
涨粉率计算 注意点 涨粉的定义及时点,定义已给出,默认end_time为点击follow的时间点(涨粉的时点) 粉丝增长计算中,2代表-1,if判断即可 当前粉丝量是累计计算,使用sum(粉丝增长量) over (partition by 作者id order 月份) 返回值中Month是带有年...
Mysql
2022-01-18
0
525
题解 | #每类视频近一个月的转发量/率#
转发量/率计算 注意点 定义有用户互动的最近一个月,当前最近播放的时间的近一个月,即先查询所有记录中end_time的最大值,然后计算日期差datediff小于30(这里的日期差是包括了当天,因此不是小于等于) select tvi.tag, sum(tuvl.if_re...
Mysql
2022-01-18
0
261
题解 | #平均播放进度大于60%的视频类别#
平均播放进度 三个注意点 播放进度大于100%时,即播放时长>视频时长,直接等于100% 保留2位,按比率值降序排序 返回结果中出现%,使用concat函数对比率值与符号进行连接 思路:与前一题一样,通过tb_user_video_lag计算每个用户的播放时长,左连接(这里内连接也可以...
Mysql
2022-01-18
1
417
题解 | #异常的邮件概率#
完播率计算 难点在于时间差的计算,个人觉得end_time - start_time这种写法存在一定的问题,最好的方式是采用timestampdiff进行计算。 select t.video_id, round(sum(if(t.t_diff >= t.duration, ...
Mysql
2022-01-18
0
342
首页
上一页
1
2
3
4
5
下一页
末页