数仓经典面试题三:用户留存

题目要求:
如何计算留存率
留存率是考察企业留住用户的能力,我们经常会计算次日留存、2日留存、7日留存等,如果现在让你用SQL实现,该怎么操作呢?
表部分数据如下:
在这里插入图片描述
留存数据字段说明:
用户id:用户唯一标识;

APP应用名称:是手机中的某个应用,例如相机、微信、大众点评等。

启动时长:某一天中使用某应用多长时间(分钟)。

启动次数:某一天中启动了某应用多少次。

登陆时间:使用手机的日期。例如2018-05-01。

现在该手机厂商想要分析手机中的应用(相机)的活跃情况,需统计如下数据:

某日活跃用户(用户id)在后续的一周内的留存情况(计算次日留存用户数,3日留存用户数,7日留存用户数)

指标定义:

某日活跃用户数,某日活跃的去重用户数。

N日活跃用户数,某日活跃的用户数在之后的第N日活跃用户数。

N日活跃留存率,N日留存用户数/某日活跃用户数

例:登陆时间(20180501日)去重用户数10000,这批用户在20180503日仍有7000人活跃,则3日活跃留存率为7000/10000=70%

所需获得的结果格式如下:

在这里插入图片描述
留存样板:
在这里插入图片描述
自连接实现方式:
在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值