• 用户留存率计算


    留存率作用

    用户留存率体现用户粘性,提高用户留存率可创造更大的价值 ,通常观察次日留存(1日留存)3日留存、7日留存、30日留存,根据不同的业务场景还有更久的周期。

    用户留存在互联网行业中是重点核心指标,每一位数据分析小伙伴都要掌握并经常分析。

    mysql计算留存率的写法 

    假设我们计算用户注册后,的次日留存、三日留存、七日留存、三十日留存,数据表login_info有两个字段user_id(用户ID),login_date(登录日期)

     1 select *,
     2 concat(round(100*次日留存用户/日新增用户数,2),'%')  次日留存率,
     3 concat(round(100*三日留存用户/日新增用户数,2),'%')  三日留存率,
     4 concat(round(100*七日留存用户/日新增用户数,2),'%')  七日留存率,
     5 concat(round(100*三十日留存用户/日新增用户数,2),'%')  三十日留存率 
     6 from 
     7 (    
     8     select 
     9     c.log_day 日期,
    10     count(distinct c.u_id)  日新增用户数,
    11     count(distinct d.u_id)  次日留存用户,
    12     count(distinct e.u_id)  三日留存用户,
    13     count(distinct f.u_id)  七日留存用户,
    14     count(distinct g.u_id)  三十日留存用户
    15     from 
    16     (
    17         
    18         select a.*
    19         from login_info a 
    20         where a.user_id not in (select distinct user_id from login_info where login_date < '2021-06-01')21         
    22     ) c
    23     left join login_info d on c.u_id = d.u_id  and  DATEDIFF(d.login_date,c.login_date) = 1 
    24     left join login_info e on c.u_id = e.u_id  and  DATEDIFF(e.login_date,c.login_date) = 3
    25     left join login_info f on c.u_id = f.u_id  and  DATEDIFF(f.login_date,c.login_date) = 7
    26     left join login_info g on c.u_id = g.u_id  and  DATEDIFF(g.login_date,c.login_date) = 30
    27     group by c.login_date
    order by c.login_date
    28 ) p;
  • 相关阅读:
    自身哲学
    horovod
    nvidia-smi 关键知识
    7.22实习培训日志-JSP Servlet
    7.20实习培训日志-Java基础程序设计结构
    7.19实习培训日志- java进阶
    7.18实习培训日志-环境配置与设计模式
    7.17实习培训日志-java基础
    7.10实习培训日志-Maven 敏捷编程
    7.15实习培训日志 java题解
  • 原文地址:https://www.cnblogs.com/tttzqf/p/16318703.html
Copyright © 2020-2023  润新知