当前位置: 首页 > news >正文

MySQL | DATE_ADD()函数

题1:

现在运营想要查看用户在某天刷题后第二天还会再来刷题的平均概率。请你取出相应数据。

示例:question_practice_detail

iddevice_idquest_idresultdate
12138111wrong2021-05-03
23214112wrong2021-05-09
33214113wrong2021-06-15
46543111right2021-08-13
52315115right2021-08-13
62315116right2021-08-14
72315117wrong2021-08-15
……

根据示例,你的查询应返回以下结果:

avg_ret
0.3000

思路分析:所谓次日留存,指的是同一用户(在本题中则为同一设备,即device_id)在当天和第二天都进行刷题,

次日还会来刷题的概率=去重的数据表中符合次日留存的条目数目/去重的数据表中所有条目数目,所以这里需要查询这两个的数目。

这里使用到了DATE_ADD() 函数,可以巧妙的统计到后一天也刷题的个数。

select count(q2.device_id)/count(q1.device_id) as avg_ret
from (select distinct device_id,date from question_practice_detail) as q1
left join (select distinct device_id,date from question_practice_detail) as q2
on q1.device_id=q2.device_id and q2.date=DATE_ADD(q1.date,interval 1 day)

http://www.lryc.cn/news/446854.html

相关文章:

  • DVWA 靶场环境搭建
  • Autosar学习----AUTOSAR_SWS_BSWGeneral(七)
  • 自动化测试框架集成:将Selenium集成到pytest与unittest中
  • 华为GaussDB数据库(单机版)在ARM环境下的安装指南
  • 计算机网络笔记002
  • Unity 的Event的Use()方法
  • 数据分析师之Excel数据清洗
  • 手机解压软件加密指南:让文件更安全
  • python yield generator 详解
  • MATLAB矩阵下标引用
  • syn洪水攻击原理是什么
  • 前缀和(4)_除自身以外数组的乘积
  • 第二十一节:学习Redis缓存数据库的Hash操作(自学Spring boot 3.x的第五天)
  • OpenCV视频I/O(1)视频采集类VideoCapture介绍
  • CVE-2024-46103
  • 三,MyBatis-Plus 的各种查询的“超详细说明”,比如(等值查询,范围查询,模糊查询...)
  • Linux 冯诺依曼体系结构与操作系统概念
  • UE4中 -skipbuild -nocompile 有什么区别
  • k8s篇之数据挂载类型及区别
  • LiveQing视频点播流媒体RTMP推流服务功能-支持电子放大拉框放大直播视频拉框放大录像视频流拉框放大电子放大
  • fetch怎么使用
  • 回归预测 | Matlab基于SO-SVR蛇群算法优化支持向量机的数据多输入单输出回归预测
  • 光耦知识分享:如何挑选合适的可控硅光耦型号
  • MySql Explain优化命令使用
  • Android NestedScrollView+TabLayout+ViewPager+ 其它布局,ViewPager 不显示以及超出屏幕不显示问题
  • Linux开机logo设置
  • webpack插件开发 模拟vue系统登录后,获取a标签下的文件
  • 大规模数据处理:分库分表与数据迁移最佳实践
  • TCP网络编程概述、相关函数、及实现超详解
  • Cluade 3.5 Sonnet 提示词泄露