当我们对产品进行用户行为分析时,会比较关注留存相关的指标,我们希望用户能每天使用我们的产品,那么除了常规的计算用户次日、3日、7日...n日留存率之外,我们该怎么分析一个用户连续登陆的天数呢?我们来一步步拆解。
PART
01
用户活跃数据
用户活跃表
我们有一个用户活跃表,假设每天用户只有一条登陆信息(如有多条,视实际情况处理),表结构如下:
示例数据如下:
PART
02
统计用户最长连续天数
(1)用户组内排序
使用ROW_NUMBER() 窗口函数 按uid分组,按day升序排序:
(2)判断是否连续
升序排序后:用day - sort如果连续则做差后值一样,然后再用uid,day分组算出每个uid下连续的天数;
从查询结果可以看到,每个用户每次的连续登陆天数和首尾日期;
(3)以uid分组,取最大连续登陆天数
从查询结果可以看到,每个用户在统计周期内最长的连续登陆天数,连续登陆时间越长,说明用户的粘性越高,对我们的产品来说也更有价值。
希望通过上面的一些总结,可以对大家在数据分析工作中提供一些帮助。
领取专属 10元无门槛券
私享最新 技术干货