求大神帮忙看一下这道题
【相机】是深受大家喜爱的应用之一,现在我们需要研究相机的活跃情况,需统计如下数据:某日活跃的用户(uid)在后续的一周内的留存情况(计算次留、三留、七留)
指标定义:
某日活跃用户数,某日活跃的去重用户数。
N日留存用户数,某日活跃的用户在之后的第N日活跃用户数。
N日活跃留存率,N日留存用户数/某日活跃用户数。
例:20180501日去重用户数10000,这批用户20180503日仍有7000人活跃,则3日活跃留存率为7000/10000=70%。
现有数据
数据表名:act_user_info
字段名 字段类型 备注
uid string 用户唯一标识
app_name string 应用名称,如相机、微信等
duration bigint 启动时长,按天汇总
times bigint 启动次数,按天汇总
dayno string 表分区字段,如2018-05-01
所需获得的结果格式如下:
日期 活跃用户数 次日留存用户数 三日留存用户数 七日留存用户数 次日留存率 三日留存率 七日留存率
20180501
20180502
20180503
20180504
20180505
20180506
20180507
20180508
20180509
20180510
要求:
1、活跃用户数为整数。
2、留存率表示为百分比,结果保留两位小数。
3、仅一条SQL(或者hive sql)完成。
4、仅需写出实现的查询代码即可。