Bilibili 盈利能力承压,最新准备重点运营“汽车”频道,因为汽车和新能源领域的营销预算较为充足。
为了提高运营效果,Bilibili 需要确定哪些频道的用户与“汽车”频道的用户重合度最高。
通过计算每个频道的用户中有多少比例也观看了“汽车”频道的视频,可以得出一个类似于 TGI 的指标,称为“频道重合指数”(Channel Overlap Index, COI)。
COI 值越高,表示该频道的用户与“汽车”频道的用户重合度越高。
相关表结构如下:
-
bilibili_t100 表(用户登录及会员标识表)
usr_id
(VARCHAR): 用户IDv_date
(DATE): 登录日期(只有日期,没有时间)m_flg
(INT): 会员标志(0表示非会员,1表示会员)
-
bilibili_t20 表(用户观看记录表)
usr_id
(VARCHAR): 用户IDv_id
(VARCHAR): 视频IDv_tm
(DATETIME): 观看时间
-
bilibili_t3 表(视频类型标签表)
v_id
(VARCHAR): 视频IDv_nm
(VARCHAR): 视频名称v_typ
(VARCHAR): 视频类型
任务
计算每类视频的观看人数作为分母,看过3类及以上视频的用户数作为分子,计算每类视频的“多类别观看指数”(MCVI),保留两诶小数,并按 MCVI 值降序排序。
考点
- 多表连接:连接
bilibili_t20
和bilibili_t3
表,获取用户的观看记录和视频类型。 - 用户筛选:筛选出观看过“汽车”频道视频的用户。
- 聚合计算:计算每个频道的用户中有多少比例也观看了“汽车”频道的视频。
- 结果排序:按 COI 值降序排序。
bilibili_t100,用户登录及会员标识表
usr_id | v_date | m_flg |
---|---|---|
B12 | 2020-01-03 | 0 |
B12 | 2020-01-05 | 1 |
B15 | 2020-01-03 | 0 |
B15 | 2020-01-05 | 1 |
bilibili_t20,用户观看记录表
usr_id | v_id | v_tm |
---|---|---|
B1038 | A17 | 2021-02-08 16:23:55 |
B791 | A21 | 2021-02-11 23:24:24 |
B1260 | A22 | 2021-02-04 01:20:47 |
B1116 | A22 | 2021-02-13 19:34:28 |
B456 | A22 | 2021-02-23 20:09:56 |
bilibili_t3
,视频类型标签表
v_id | v_nm | v_typ |
---|---|---|
A01 | 消失的爱人-惊悚片-本·阿弗莱克 | 放映厅 |
A02 | 每天建模半小时-在家就能养活自己 | IT |
A03 | 溜溜哥-我的CTR进化史 | 汽车 |
A04 | 首次唱跳-七夕发糖 | 舞蹈 |
A05 | 古典舞-九儿-无道具 | 舞蹈 |
 成为会员,解锁300道大厂数分SQL真题
MySQL 8.0