留存率
定义:某一天新增用户在之后的第n天仍然登录的比例,称为第n日留存率
例如:20220101新增100人,
20220102这100人中登录了60人,次日留存率为60%
20220103这100人中登录了40人,第2日留存率为40%
计算次日留存率,第2日留存率
用户t_user表(用户id,用户名user_name,注册时间register_time)
用户登录t_user_login (自增id,用户名uid,登录时间login_time)
法一:多表连接
#先计算20220101的次日留存与第二日留存
select date(tu.register_time),100*count(distinct t1.uid)/count(distinct tu.id) rr1,
100*count(distinct t2.uid)/count(distinct tu.id) rr2
from t_user tu
left join t_user_login t1 on (t1.uid = tu.id and date(t1.login_time) = date(tu.register_time)+ interval '1' day)
left join t_user_login t2 on (t2.uid = tu.id and date(t2.login_time) = date(tu