问题:

  1. 计算用户是否是次留用户
  2. 计算每日次日留存率
    (本文章中的次日留存默认只针对新增用户)

原数据表:user_login_table表

表字段:用户、登陆日期

sql查询:

  1. 计算用户是否是次留用户
select t1.user_name,max(case when datediff(day,date(newdate),date(logindate)) = 1 then 1 else 0 end) as 是否次留用户
from
(select user_name,min(logindate) newdatefrom user_login_tablegroup by user_name
) t1 join user_login_table t2 on t1.user_name = t2.user_name
group by t1.user_name

查询结果:

2. 计算每日次日留存率

select t1.logindate 日期,count(distinct case when datediff(day,date(newdate),date(t3.logindate)) = 1 then t3.user_name else null end) 次日留存用户数,count(distinct t2.user_name) 新增用户数,
bi_division(次日留存用户数*100,新增用户数,2) || '%' "次日留存率"
from
(select distinct logindate from user_login_table
) t1 left join
(select user_name,min(logindate) newdatefrom user_login_tablegroup by user_name
) t2 on t2.newdate = t1.logindate
left join user_login_table t3 on t2.user_name = t3.user_name
group by t1.logindate

查询结果:

如果以上sql中t1、t2、t3表之间任意一处用join而非left join(体现join与left join区别),读者可亲自尝试,查询结果如下:

SQL——计算次日留存率相关推荐

  1. 【SQL屠夫系列】- 高频面试之SQL计算用户留存率

    文章目录 指标背景 指标计算 真题 思路 开撸 拓展 在如今的程序员面试过程中,考察SQL部分能力,虽不是难点,但几乎是必考. 为检查思路盲点,避免翻船,各位看官也可以复盘下,如对你有一丝的帮助,欢迎 ...

  2. 【已解决】数据库常见场景应用计算次日留存率

    记录一个数据库中常见的应用场景,需要计算用户次日留存率(次留分析),查询出计算的用户留存率. 结合这个应用背景,牛客网站上的 SQL29 计算用户的平均次日留存率 非常适合拿来练习,下面就以牛客上的这 ...

  3. sql计算留存_链家面试题:如何分析留存率?

    [面试题] 手机中的相机是深受大家喜爱的应用之一,下图是某手机厂商数据库中的用户行为信息表中部分数据的截图. 用户id:用户唯一标识: 应用名称:是手机中的某个应用,例如相机.微信.大众点评等. 启动 ...

  4. 用SQL进行用户留存率计算

    今天我们来分享一个常见案例,用SQL来计算用户留存率. 目录: 1. 案例数据 2. 思路分析 3. 完整代码 1. 案例数据 这里我们一共两份日志数据,分别是用户账号创建的日志以及用户登录的日志. ...

  5. 用户留存率是什么?如何用sql求出次日留存率?

    建表sql语句: drop table if exists liucunlv; create table liucunlv as select * from ( select 'a' as user_ ...

  6. Hive 计算用户留存率(次日,3日,N日)

    文章目录 什么是用户留存率? 创建数据源 计算留存率 计算 N 日的留存率 什么是用户留存率? 用户留存率是指在特定时间段内,用户在使用某个产品或应用程序后,再次使用该产品或应用程序的比例. 它可以帮 ...

  7. 计算用户的平均次日留存率

    刷到的一道数据库题:计算用户的平均次日留存率 思路: 1.将同一张表连接起来(这里用 left join ,因为左表保留的是所有的刷题记录,右表保留的是第二天还来刷题的记录) 2.通过datediff ...

  8. SQL29 计算用户的平均次日留存率

    牛客网打卡:SQL29 计算用户的平均次日留存率 解题思路 题目给出的意思: 不考虑用户的答题情况,只考虑是否答题了 也就是选出两张表,第一张是当天的答题情况,第二张是第二天的情况 时刻理解新的虚拟表 ...

  9. sql计算每日新增用户、及留存率指标

    show databases; -- 选择数据库进行建库 use tempt2022; -- 用户注册表 create table user_info(user_id varchar(10) prim ...

最新文章

  1. linux 自动启动shell 和 init概述
  2. 面试题: mysql 数据库已看 sql安全性 索引 引擎 sql优化
  3. mysql维护 运维_MySQL运维之--日常维护操作
  4. modelandview 可以返回html么_Python: 爬虫网页解析工具lxml.html(一)
  5. hdu3033---加限制条件的0-1背包
  6. iOS中的armv6、armv7、armv7s
  7. C/C++编程知识分享:C++ 手把手教你实现可变长的数组
  8. mysql创建表失败
  9. 诺基亚五摄手机终于发布了!拍摄能力无与伦比 售价699欧元
  10. Linux下SVN 命令操作手册
  11. oracle增量脚本(记录)创建触发器监控对一张表的增删改
  12. 浏览器页面渲染的过程
  13. 最新布尔教育Blog项目实战 php博客项目实战教程 php实战教程(完整)
  14. 《认知心理学》思维导图
  15. javase哪部分最难_JavaSe到底有多重要?
  16. 做产品也要造概念,讲故事,用优雅的措辞美化自己
  17. 方舟生存显示都是外国服务器,方舟生存进化:在新服的国人,都是如何跟外国人交流的?...
  18. 创建三维头像只需一张自拍,AI 技术即将开启 3D 社交时代?
  19. php artisan migrate,关于laravel 5.1下php artisan migrate的使用
  20. rabiitmq卸载_RabbitMQ 的安装与卸载 以及各种踩坑

热门文章

  1. python爱因斯坦的问题_基于Python3的趣味数学问题
  2. 一些冷门却有用的小知识
  3. wifi 3A认证总体架构设计思路
  4. tpl怎么口_解决tplogin.cn打开是电信登录页面的办法是什么?
  5. python炒股模块_Python数据分析-numpy模块、pandas模块.基本操作、股票案例
  6. mySql 简单 多表 联查
  7. html怪异模式是什么,浅谈CSS编程中的怪异模式
  8. 蓝桥杯上了白名单《2022-2025学年面向中小学生的全国性竞赛活动名单》
  9. CNS网络GPU加速配置步骤
  10. 学会如何学习,是一项终极生存技能