题解 | #计算用户的平均次日留存率#

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

http://www.nowcoder.com/practice/126083961ae0415fbde061d7ebbde453

利用窗口函数计算平均日留存率: ①去重(根据device_id,date去除掉用户同一天的消费) ②开窗:根据用户分区按照日期排序选取前一次的消费 ③统计:看消费日期与开窗后的日期是否差一天,如果是则置0,不是则为Null ④计算:count(row)/count() select count(rowcount)/count() from (select if(lastdate = Date_sub(date,interval 1 day),0,null) as rowcount from (select date,lag(date,1) over(partition by device_id order by date) as lastdate from (select device_id,date from question_practice_detail group by device_id,date) d) f)g;

全部评论

相关推荐

程序员牛肉:这一眼假啊,基本上都是骗人的,不然就涉及到职位贪腐了,就像之前华为的OD事件,看你运气好不好了
点赞 评论 收藏
分享
迷茫的大四🐶:自信一点,我认为你可以拿到50k,低于50k完全配不上你的能力,兄弟,不要被他们骗了,你可以的
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务