对于通过不同渠道拉新进来的用户,经过一段时间许多用户可能流水,而留下来的用户称之为留存用户。分析用户留存是拉新和用户运营的重要指标。假如我们有一张用户访问表:person_visit,记录了所有用户的访问信息,包含字段:
用户id:user_id,访问时间:visit_date,访问页面:page_name,访问渠道(android,ios):plat等
请统计每个访问渠道7天前(D-7)的新用户的3日留存和7日留存率?
您好,
SELECT plat, COUNT(DISTINCT user_id) FROM person_visit
WHERE MIN(DATE_FORMAT(visit_date, '%Y%m%d')) = (CURDATE()-INTERVAL 7 DAY)
GROUP BY plat;
SELECT plat, COUNT(DISTINCT user_id) FROM person_visit
WHERE DATE_FORMAT(visit_date, '%Y%m%d') = (CURDATE()-INTERVAL 4 DAY) AND
user_id IN (SELECT user_id FROM person_visit
WHERE MIN(DATE_FORMAT(visit_date, '%Y%m%d')) = (CURDATE()-INTERVAL 7 DAY))
GROUP BY plat;
SELECT plat, COUNT(DISTINCT user_id) FROM person_visit
WHERE DATE_FORMAT(visit_date, '%Y%m%d') = CURDATE() AND
user_id IN (SELECT user_id FROM person_visit
WHERE MIN(DATE_FORMAT(visit_date, '%Y%m%d')) = (CURDATE()-INTERVAL 7 DAY))
GROUP BY plat;
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。