用户留存分析—SQL

大数据开发中如何计算用户留存及SQL示例 first_login` 表包含每个用户的首次登录时间,而 `retention_users` 表包含那些在首次登录后的次日也登录了的用户。在大数据开发中,计算用户留存是评估产品对用户的吸引力和用户粘性的重要手段。用户留存通常是指用户在经过一定时间后仍然继续使用产品的行为,这可以通过留存率来量化。除了次日留存率,还可以计算3日留存率、7日留存率等。假设我们有一个用户行为日志表 `user_log`,包含字段 `user_id`(用户ID)和 `login_time`(登录时间)。### 2. 准备数据。 阅读详情
SELECT
	log_day '日期',
	count( user_id_day0 ) '新增数量',
	count( user_id_day1 ) / count( user_id_day0 ) '次日留存率',
	count( user_id_day3 ) / count( user_id_day0 ) '3日留存率',
	count( user_id_day7 ) / count( user_id_day0 ) '7日留存率',
	count( user_id_day30 ) / count( user_id_day0 ) '30日留存率' 
FROM
	(
	SELECT DISTINCT
		log_day,
		a.user_id_day0,
		b.user_id AS user_id_day1,
		c.user_id AS user_id_day3,
		d.user_id AS user_id_day7,
		e.user_id AS user_id_day30 
	FROM
		( SELECT DISTINCT 
				date AS log_day, 
				user_id AS user_id_day0 
				FROM 
				data
				GROUP BY user_id 
				ORDER BY log_day 
				) a
		LEFT JOIN data b ON DATEDIFF(b.date, a.log_day ) = 1 
		AND a.user_id_day0 = b.user_id
		LEFT JOIN data c ON DATEDIFF(c.date, a.log_day ) = 2 
		AND a.user_id_day0 = c.user_id
		LEFT JOIN data d ON datediff(d.date, a.log_day ) = 6 
		AND a.user_id_day0 = d.user_id
		LEFT JOIN data e ON datediff(e.date, a.log_day ) = 29 
		AND a.user_id_day0 = e.user_id 
	) temp 
GROUP BY
	log_day
ORDER BY log_day;


在这里插入图片描述

HiveSQL题——用户留存数 阅读详情

相关推荐

用 SQL 分析不同用户群组留存率

一、前言 用户增长对企业非常重要,主要包括: 新增、留存、召回 。本文介绍一个实用的分析留存率的方法: Cohort Analysis (群组分析),APP的下载量越高并不是说产品就越好,产品若没有很好的留存,花费大量时间和资源来挖掘新客户也将是竹篮打水一场空。群组分析有利于衡量用户在每个漏斗的用户流失节点、用户流失数据,从而帮助你发现产品的用户的行为模式和用户增长点。从本质上讲,群组分析Cohort Analysis为你提供了一种数据驱动的方法,用群组分析Cohort Analysis方法,可以来帮助提

qq_39984050的博客 3174

经典SQL面试题之用户留存问题

哈喽,小伙伴们,今天给大家讲解一道面试中常见的SQL问题------用户留存问题,希望能帮助到小伙伴们。需要说明的是本人是在MySQL中进行的开发,如果你使用的是Hive,可能有部分函数不兼容。

m0_46503302的博客 2084

SQL关于每日新增用户、次留存率、七日留存率等问题

1.数据下载(七周成为数据分析师的原数据): https://pan.baidu.com/s/1ZWQKm1zy9xnNpUfo9Uc9WA 2.将数据CSV导入到SQL中 如下 3.思路 –关于新增用户(第一次登陆的用户): select userid,min(paytime) first from order_info group by userid; –次留用户(即第一次登陆的用户在一天...

qq_43807789的博客 2万+

sql 用户登录和留存问题

题目转自牛客网sql 66-71题 目录题目描述1.查询用户最近登录时间2.统计每个用户最近登录是哪一天,用的是什么设备3.查询新登录用户的次日留存率4.查询每天的新用户数5.查询每天的新用户留存率6.查询每天每位用户的累计做题量 题目描述 牛客每天有很多人登录,有一个登录(login)记录表,简况如下(这个表为基础表,后面所有的题都是以这个为基础进行的): 第1行表示user_id为2的用户在2020-10-12使用了客户端id为1的设备登录了牛客网 。。。 第4行表示user_id为3的用户在2020

从零瞎学日记 893

SQL 窗口函数与子查询对比:用户留存率与订单分析2种实现方案

本文深入对比了SQL窗口函数与子查询在用户留存率与订单分析中的两种实现方案。通过具体案例和性能测试,展示了窗口函数在复杂计算和大数据量下的优势,同时提供了子查询的适用场景和优化技巧。文章还包含索引设计、常见陷阱规避以及现代数据库新特性的应用建议,帮助开发者根据业务需求选择最佳查询方案。

weixin_30642869的博客 405

SQL进阶技巧:用户浏览日志分析【访问量、活跃用户、新增用户、留存用户、流失用户、沉默用户、回流用户】

本文针对用户浏览日志,对活跃用户、新增用户、留存用户、流失用户、沉默用户、回流用户等指标进行了分析和计算

石榴姐yyds 653

SQL新用户留存分析

用户留存分析

mrye的博客 1110

Mask2Former实战:用SwinTransformer+Deformable Attention搞定图像分割三大任务

本文实战解析了Mask2Former模型如何统一解决语义、实例和全景分割三大任务。通过集成Swin Transformer骨干网络与创新的Deformable Attention及Masked Attention机制,详细介绍了模型构建、训练策略及在COCO数据集上的性能表现,为开发者提供了高效的图像分割解决方案。

tech5的博客 246

sql计算留存_用户留存分析之魔法数字

一、背景 产品除了活跃的数据, 留存的数据也是至关重要的, 优化好了留存, 也就提升了活跃, 所以数据分析师天天会被产品问到的一个问题就是: 我们到底应该怎么去提升我们的留存, 非常烦, 你们有没有这样的感触? 互联网思维中的一条就是用户至上, 留住用户才有故事。 那么我们怎么通过数据去帮助产品去发现留存的关键行为呢, 去解决我们烦心的问题呢? 我们的分析目标:...

weixin_39982452的博客 423

Oracle登录报错ORA-12560?5分钟搞定TNS协议适配器错误的完整修复指南

本文详细解析了Oracle登录报错ORA-12560(TNS协议适配器错误)的成因与解决方案。从基础服务检查到高级网络配置排查,提供了一套完整的修复流程,帮助数据库管理员快速解决连接问题,确保Oracle数据库的稳定运行。

weixin_29278805的博客 524

采用离散模型搭建永磁同步电机控制系统

永磁同步电机发电系统分为控制器和发电机,通过simulink仿真软件进行发电系统的离散系统仿真。离散搭建仿真,可以更方便的自动代码生成。通过实践经验离散模块搭建,更能加深对整个控制系统的理解。离散系统在矢量控制中经常涉及到上个开关周期的角度,电压,或者预测下个周期的角度,电流,一般都是通过延时模块实现。PWM比较值寄存器被改写后都是使能了预装载,采样后触发计算到比较值生效可以延时0.5个开关周期Ts,也可以延时1个开关周期Ts,可以通过离散系统进行仿真,大大缩短开发周期。

f1072239934的博客 2863

MySQL数据库SQL语句分析用户留存率

上述SQL查询语句通过CTE(Common Table Expressions)分别计算了注册用户总数、注册后第7天、第14天和第30天留存的用户数,然后计算了相应的留存率。retention_7d 、 retention_14d 和 retention_30d CTE:分别计算在注册后第7天、第14天和第30天有行为的用户。假设我们要分析在2024年1月1日到2024年1月31日注册的用户在注册后第7天、第14天和第30天的留存情况。

weixin_30777913的博客 432

Utrust4701F与Utrust2700R读写器在银河麒麟系统的安装及测试步骤说明

Utrust4701F与Utrust2700R读写器支持银河麒麟系统,广泛应用会员管理、支付管理等领域。本文将重点介绍Utrust4701F与Utrust2700R读写器在银河麒麟系统的安装及测试步骤说明。以上方法适用于主流国产操作系统,如 优麒麟(UbuntuKylin)/ 中标麒麟(NeoKylin) / UOS(统信操作系统)/ 中兴新支点 / 红旗 linux(redflag linux)/ 普华 Linux(I-soft OS) / 威科乐恩 Linux(WiOS)等

华翔天诚科技 1834

hive 用户行为分析(活跃。启动,留存,回访,新增)的一些经典sql

很简单的sql 用户分析语句 :只要自定义简单的udf函数 获取统计时间createdatms字段的使用的日历类 add方法 和simpledateformat 将long类型的 定义多个重载方法 获取返回值int类型 或者long类型 进行时间判断即可 getdaybegin(天开始),比如2017-08-08这一天的createtime为15288888888888 获取到 152888...

weixin_30642029的博客 1129

TSMaster MBD模块实战:如何用Simulink模型快速搭建汽车电子测试环境

本文实战演示了如何利用TSMaster的MBD模块,将Simulink模型快速部署为汽车电子自动化测试环境的核心。通过建立模型与TSMaster系统变量的实时数据通道,并利用数据仓库统一数据定义,工程师能无缝连接算法仿真与真实总线网络,显著提升从模型到HIL测试的验证效率。

php55的博客 211

Windows11搭建GPU版本PyTorch 开发环境教程

Windows11搭建GPU版本PyTorch环境详细过程

世界那么大,我想去看看~【随心更新,看世界去了😄】 3236

Excel实战:用同期群分析新用户留存率(附完整SQL查询代码)

本文提供了一份使用Excel进行同期群分析的实战指南,旨在帮助运营人员精准评估新用户留存率。文章详细拆解了从数据清洗、SQL核心查询到Excel数据透视与热力图可视化的完整步骤,并附有可直接使用的SQL代码,助力读者快速掌握这一关键的用户增长分析工具,将数据转化为有效的业务洞察。

weixin_29290947的博客 126

思科 MIB 库

思科 MIB

m0_54931486的博客 770

Hive Sql之用户行为分析(活跃。启动,留存,回访,新增)的一些经典案例

很简单的sql 用户分析语句 :只要自定义简单的udf函数 获取统计时间createdatms字段的 使用的日历类 add方法 和simpledateformat 将long类型的 定义多个重载方法 获取返回值int类型 或者long类型 进行时间判断即可 getdaybegin(天开始),比如2017-08-08这一天的createtime为15288888888888 获取到 152888880000(代表20170808 00:00:00)当天开始的凌晨 getWeekbegin,getMonthgi

南风知我意 1004

【华为OD机试真题】390、AI面板识别 | 机试真题+思路参考+代码解析(C++、Java、Py、C语言、JS)

题目描述 >AI识别到面板上有N(1 ≤ N ≤ 100)个指示灯,灯大小一样,任意两个之间无重叠。   由于AI识别误差,每次别到的指示灯位置可能有差异,以4个坐标值描述AI识别的指示灯的大小和位置(左上角x1,y1,右下角x2,y2),   请输出先行后列排序的指示灯的编号,排序规则:   1、每次在尚未排序的灯中挑选最高的灯作为的基准灯   2、找出和基准灯属于同一行所有的灯进行排序。两个灯高低偏差不超过灯半径算同一行(即两个灯坐标的差 ≤ 灯高度的一半)

KJ.JK 1805

C# WinForm 基于DirectShow.dll编写的程序,可边预览边保存视频,音频和图片

基于微软的DirectShow.dll的二次开发1.自动识别连接的摄像头跟麦克风且可以对其进行选择(默认选中第一个)2.可录制wmv和avi两种格式的视频并且都带有音频,avi可以录制的分辨率和帧数进行选择,wmv默认进行了淸晰度优化如不喜欢可去除代码中有相关提示3.可在预览点开之后进行拍照,也可边录制视频边拍照4.添加了视频和音频的压缩功能(酌情使用)这次二次开发发现C#对DirectShow的相关信息太少,这次做完也不敢藏私共享出来,还望大家指正

数据分析/数据科学常见SQL题目:连续登录用户、留存率、最大观看人数

d表内容和上一题一样,但我们需要考虑某天新增用户为0的情况,并输出新增用户的次日留存率0以及日期。如果一个用户连续登录或者同一天多次登录,那么他的登录日期与序号的差值是相同的,所以可以根据。是为了排除一个用户多次连续登录,比如:连续登录两天,第三天未登录,接着又连续登录两天。得到的就是有考试成绩的名字,通过外连接,我们就可以得到全班人的名字以及成绩。班的所有学生的成绩,但是班上有人缺考,也就是成绩表里没有姓名,我们先用。,差值分组,便可以求得用户的连续登录和同一天多次登录的累计天数。

Cachel Wood的博客 1313

锂电池充电器电路设计 里面有电路

锂电池充电器电路设计 里面有电路 3.7V升压到5V电路设计。

从‘双十一’大促看Spark-SQL日期函数:如何高效分析用户留存与复购周期?

本文深入探讨了电商大促期间如何利用Spark-SQL日期函数高效分析用户留存与复购周期。通过实战案例展示了to_timestamp、datediff等内置函数的应用,帮助数据团队优化促销策略,提升用户留存率和复购率,实现数据驱动的商业价值。

weixin_30600197的博客 422

贝叶斯统计 [韦来生编]

贝叶斯(Bayes)统计是近几十年来迅速发展起来的数理统计的一个重要分支。贝叶斯方法与经典统计方法的主要不同之处是进行统计推断时除了利用样本信息外,还要利用参数的先验信息,因此可以提高统计推断或统计决策的效果。它在经济、金融、生物、医学、自然科学和社会科学等许多领域具有广泛的应用。贝叶斯方法的研究已渗透到了统计学的几乎所有领域。作者在给中国科学技术大学概率论与数理统计专业本科生开设的“数理统计”课程中有一章专门讲授“贝叶斯方法和统计决策理论”,近十年来也给中国科学技术大学概率统计专业研究生开设过几次“贝叶斯分析”课。本书是在对过去讲稿的内容作了适当的增减和调整的基础上完成的。  本书共分六章。第1章是绪论,介绍了贝叶斯统计的若干基本概念,同时对必要的数理统计的基础知识有重点地作了回顾。第二章介绍了确定先验分布的若干可供选择的方法。第三章介绍了几类常见统计模型参数的后验分布的主要结果和计算方法。第四章和第五章分别介绍了“贝叶斯统计推断”和“贝叶斯统计决策”的内容。第六章介绍了贝叶斯统计计算的若干方法,包括蒙特卡洛方法和马尔可夫链蒙特卡洛(MCMC)方法以及相关统计软件的简介。本书的每一章附右大量的例题和习题,书末附有常用的几个表格和部分习题解答供读者查用。  大约可在54学时内讲授本书的第1章至第六章的主要内容,教师可根据学时需要选讲本书第1章至第六章的部分内容。书中标“*”号的章节可略去不讲,留给读者作为阅读材料。第六章例题中的R代码和部分例题的数据文件等可从作者个人主页下载。  作者在编写本书的过程中参考了J.O.Berger教授的《统计决策论及贝叶斯分析》和茆诗松教授编写的《贝叶斯统计》等书中的一些内容,以及《贝叶斯分析》一书中由张伟平博士编写的有关贝叶斯统计计算的一些内容。在此表示衷心感谢。  本书编写准备过程中,中国科学技术大学统计与金融系的几个研究生帮助完成了本书部分中文的录入和排版,作者对他们的辛勤工作表示真诚的感谢。高等教育出版社为本书的出版给予了大力支持。在此一并致谢。

怀旧版电脑GBC模拟器

再现原版GBC掌机的界面,电脑运行连游戏界面都一样大小,很怀旧,很真实,(英文版)强烈推荐,很小的文件,很难才找到的。

SQL 窗口函数与子查询进阶:5步拆解用户留存率与复购行为分析

本文深入解析SQL窗口函数与子查询在用户留存率与复购行为分析中的高级应用,通过5个步骤构建完整分析框架。涵盖次日留存率计算、复购行为识别、性能优化对比及电商实战案例,帮助数据分析师掌握核心SQL技术,提升业务洞察能力。

weixin_34224941的博客 321

用SQL进行用户留存率计算

今天我们来分享一个常见案例,用SQL来计算用户留存率。目录:1. 案例数据2. 思路分析3. 完整代码1. 案例数据这里我们一共两份日志数据,分别是用户账号创建的日志以及用户登录的日志。账号创建日志账号创建日志用户登录日志登录日志2. 思路分析所谓留存,就是指某日创建的账号在后续自然日登录的比例,比如3月1日新增账号创建数为100,在3月2日这部分用户登录数为51,那么3...

张俊红的个人博客 1万+

用Spark-SQL搞定复杂日期计算:从周报统计到用户留存分析

本文详细介绍了如何利用Spark-SQL处理复杂日期计算,涵盖周报统计、用户留存分析等业务场景。通过核心日期函数、周粒度分析技巧、用户留存进阶方案等内容,帮助数据工程师高效解决时序数据处理难题,特别适用于电商、金融等需要精准日期分析的领域。

weixin_30493401的博客 399
上一篇: python处理时间格式:日期、时间、年、月、日、时刻、星期
下一篇: 电商平台用户行为分析—SQL
rubyw
博客等级 码龄7年 1528粉丝 234原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

rubyw

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值