题解 | #计算用户的平均次日留存率#
计算用户的平均次日留存率
https://www.nowcoder.com/practice/126083961ae0415fbde061d7ebbde453
结果
select
avg(if (datediff(date2, date1) = 1, 1, 0)) as avg_ret
from
(
select distinct
device_id,
date as date1,
lead (date) over (
partition by
device_id
order by
date
) as date2
from
(
select distinct
device_id,
date
from
question_practice_detail
) as uniq_id_date
) as id_last_next_date
过程
一步一步来 某天刷题后 第二天还来的平均概率
(1) 先去重 去掉某天登录多次的用户
select distinct device_id,date from question_practice_detail
(2)使用lead窗口函数 找出当前device_id分组中 每个日期dat1的下个日期 作为date2
(3)比较date2和date1之间相差天数 如果为1则表示第二天又来了 计算平均概率
拼多多集团-PDD公司福利 817人发布
查看6道真题和解析