留存率的计算

该篇文章详细描述了一种SQL查询方法,用于分析用户日志中不同时间间隔(如1天、3天和7天)的活跃用户数,以评估用户会话行为特征。通过分组和计数distinctuserid,作者展示了如何在数据集中检测和量化用户间的频繁互动。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >



select starttime,round(base_1_num/base_num,2) as lcl_1,
       round(base_3_num/base_num,2) as lcl_3,
       round(base_7_num/base_num,2) as lcl_7
from (
         select starttime,count(distinct userid)as base_num
              ,count(distinct if(diff=1,userid,null)) as base_1_num
              ,count(distinct if(diff=3,userid,null)) as base_3_num
              ,count(distinct if(diff=7,userid,null)) as base_7_num
         from (
                  select t1.userid,t1.time as starttime,t2.time as endtime,datediff(t2.time,t1.time) as diff
                  from (
                           (select userid,date_format(time,'%Y-%m-%d') as time
                            from user_log
                            group by userid, date_format(time,'%Y-%m-%d')) t1
                               left join
                               (select userid,date_format(time,'%Y-%m-%d') as time
                                from user_log
                                group by userid, date_format(time,'%Y-%m-%d')) t2
                           on t1.userid=t2.userid and t2.time>t1.time
                           )
              )t3 group by starttime
     )t4

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值