SQL计算留存率指标

简介: SQL计算留存率指标
select *,
  concat(round(100 * 次日留存用户数/活跃用户数, 2), '%') 次日留存率,
  concat(round(100 * 三日留存用户数/活跃用户数, 2), '%') 三日留存率,
  concat(round(100 * 七日留存用户数/活跃用户数, 2), '%') 七日留存率
from (
  select 
    a.log_day 日期,
    count(distinct(concat(a.device_id, a.app_id))) 活跃用户数,
    count(distinct(concat(b.device_id, b.app_id))) 次日留存用户数,
    count(distinct(concat(c.device_id, c.app_id))) 三日留存用户数,
    count(distinct(concat(d.device_id, d.app_id))) 七日留存用户数
  from user_log a
  left join user_log b on concat(a.device_id, a.app_id) = concat(b.device_id, b.app_id) and b.log_day = a.log_day + 1
  left join user_log c on concat(a.device_id, a.app_id) = concat(c.device_id, c.app_id) and c.log_day = a.log_day + 3
  left join user_log d on concat(a.device_id, a.app_id) = concat(d.device_id, d.app_id) and d.log_day = a.log_day + 7
  group by a.log_day
  ) p;
相关文章
|
6月前
|
SQL 存储 大数据
黑马程序员-大数据入门到实战-分布式SQL计算 Hive 语法与概念
黑马程序员-大数据入门到实战-分布式SQL计算 Hive 语法与概念
73 0
|
4月前
|
SQL 存储 分布式计算
奇思妙想的SQL|去重Cube计算优化新思路
本文主要分享了作者在蚂蚁集团高管数据链路改造升级过程中,针对去重Cube的优化实践。
636 48
|
4月前
|
SQL 存储 算法
数据库编程大赛:一条SQL计算扑克牌24点
参加NineData举办的数据库编程大赛,展示你的技术才华!用一条SQL语句解决扑克牌24点的计算表达式。这场比赛面向数据库爱好者、开发者、程序员、DBA等,展示你的编程技能,并有机会赢得丰厚奖励。欢迎大家来挑战!
193 0
数据库编程大赛:一条SQL计算扑克牌24点
|
3月前
|
SQL
leetcode-SQL-1440. 计算布尔表达式的值
leetcode-SQL-1440. 计算布尔表达式的值
29 1
|
3月前
|
SQL
leetcode-SQL-1873. 计算特殊奖金
leetcode-SQL-1873. 计算特殊奖金
16 0
|
3月前
|
SQL 数据挖掘 数据处理
「SQL面试题库」 No_113 计算税后工资
「SQL面试题库」 No_113 计算税后工资
|
3月前
|
SQL 数据挖掘 数据处理
「SQL面试题库」 No_109 计算布尔表达式的值
「SQL面试题库」 No_109 计算布尔表达式的值
|
4月前
|
SQL 关系型数据库 C语言
PostgreSQL【应用 03】Docker部署的PostgreSQL扩展SQL之C语言函数(编写、编译、载入)计算向量余弦距离实例分享
PostgreSQL【应用 03】Docker部署的PostgreSQL扩展SQL之C语言函数(编写、编译、载入)计算向量余弦距离实例分享
45 0
|
6月前
|
SQL 存储 分布式计算
HA3 SQL样本实验:一种混合计算查询的全新样本解决方案
HA3(对外开源代号:Havenask )是阿里智能引擎团队自研的大规模分布式检索系统,广泛应用于阿里内部的搜索业务,是十多年来阿里在电商领域积累下来的核心竞争力产品。Ha3 SQL 是在原有Ha3引擎基础上,新增的SQL查询功能,引擎内置了SQL形式的的查询语法,允许用户通过写SQL语句来构造引擎查询。
|
6月前
|
SQL 关系型数据库 MySQL
可以使用SQL语句来声明变量、设置自变量以及根据计算结果赋值
可以使用SQL语句来声明变量、设置自变量以及根据计算结果赋值
51 3