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

一天一道Sql题(day05)

有用户登录表A,字段如下:
字段    类型    含义
user_id bigint  用户uid
device_id   bigint  设备ID
login_date  string  登录日期
求解:如果用户第一天登录算新用户,求每一天登录的新老用户数

思路:

用开窗函数增加一个排序列。根据用户id分组后按照登录时间降序排序,如果排名是1说明用户是第一次登录是新用户,否则就是老用户

使用对日期分组,在sum出每天新老用户数

sql:

with t as (select  user_id,login_date,row_number() over(partition by user_id order by login_date desc) numfrom A
)
select login_date,sum(if(num==1,1,0)) as new_user,sum(if(num>1,1,0)) as old_user
from t 
group by login_date
order by login_date desc

我是在csdn上直接手敲的sql,没有运行验证,有错误的地方请指出~

http://www.dtcms.com/a/270931.html

相关文章:

  • IntelliJ IDEA 2025.1.3创建不了java8的项目
  • 初识MySQL(三)之主从配置与读写分离实战
  • Mac电脑,休眠以后,发现电量一直在减少,而且一个晚上,基本上是没了,开机都需要插电源的简单处理
  • Hive MetaStore的实现和优化
  • 在 macOS 上安装与自定义 Oh My Zsh:让终端美观又高效 [特殊字符]
  • 如何使用Pytest进行测试?
  • 基于大模型的窦性心动过速全周期预测与诊疗方案研究报告
  • 【linux】ssh使用-X参数后报错:X11 forwarding request failed on channel 0
  • [GICP] 点云预处理 | 近似最近邻搜索结构(ANN) | KdTree构建 vs 体素地图shi管理
  • 宇树 G1 部署(一)——综述
  • 6N70-ASEMI开关电源核心元件6N70
  • Go语言教程-环境搭建
  • [Vroom] 位置与矩阵 | 路由集成 | 抽象,解耦与通信
  • VScode SSH远程连接Ubuntu(通过SSH密钥对的方式)
  • LLM的表征做减法的是什么,自然语言是一个矩阵,怎么进行减法的
  • 爬虫-正则表达式
  • 【HarmonyOS6】获取华为用户信息
  • 出圈or出局?AI汽车“急速驶来”,市场淘汰赛一触即发
  • leetcode 每日一题 3439. 重新安排会议得到最多空余时间 I
  • 二刷 黑马点评 部署
  • 大模型MoE模型技术详解
  • 专题一_双指针_查找总价格为目标值的两个商品
  • 小程序主体变更全攻略:流程、资料与异常处理方案
  • WPF学习笔记(27)科学计算器
  • 李宏毅NLP-9-语音转换
  • 无人机报警器频段模块设计与运行要点
  • 小米路由器3C刷OpenWrt,更换系统/变砖恢复 指南
  • 在 Spring Boot 中如何使用 Assert 进行断言校验
  • 安卓设备信息查看器 - 功能介绍
  • 【bug修复积累】关于包装类型和基本数据类型的使用