一、用户留存数
电商业务中需要计算用户留存情况,在时间维度上可以分为用户次日,N日后的留存情况,用留存率表示。留存率计算方式如下:
- 次日留存率= 基准日新增用户在次日登陆的数量 / 基准日新用户注册数量
- 三日留存率= 基准日新增用户在第四日登陆的数量 / 基准日新用户注册数量
- 七日留存率= 基准日新增用户在第八日登陆的数量 / 基准日新用户注册数量
0 问题描述
计算基准日的次日、3日、7日的用户留存率
1 数据准备
创建用户登录表
create table if not exists uid_login
(
user_id int comment '用户id',
login_time string comment '用户登录时间'
)
comment '用户登录表(活跃表)';
truncate table uid_login;
INSERT overwrite table uid_login
VALUES
(1, '2020-01-02 00:02:00'),
(2, '2020-01-02 00:02:00'),
(3, '2020-01-02 00:02:00'),
(1, '2020-01-03 00:02:00'),
(3, '2020-01-03 00:02:00'),
(4, '2020-01-03 00:02:00'),
(6, '2020-01-03 00:02:00'),
(2, '2020-01-04 00:02:00'),
(3, '2020-01-04 00:02:00'),
(5, '2020-01-04 00:02:00'),
(6, '2020-01-04 00:02:00'),
(7, '2020-01-0