hive-sql 连续登录五天的用户

sql 复制代码
with tmp as (
          select '梁牧泽' as uid, '2023-03-03' as `dt` union all
          select '梁牧泽' as uid, '2023-03-04' as `dt` union all
          select '梁牧泽' as uid, '2023-03-05' as `dt` union all
          select '梁牧泽' as uid, '2023-03-07' as `dt` union all
          select '梁牧泽' as uid, '2023-03-08' as `dt` union all
          select '梁牧泽' as uid, '2023-03-09' as `dt` union all
          select '梁牧泽' as uid, '2023-03-10' as `dt` union all
          select '梁牧泽' as uid, '2023-03-11' as `dt` union all
          select '梁牧泽' as uid, '2023-03-12' as `dt` union all
          select '夏初' as uid, '2023-03-10' as `dt` union all
          select '夏初' as uid, '2023-03-10' as `dt` union all
          select '夏初' as uid, '2023-03-11' as `dt` union all
          select '夏初' as uid, '2023-03-12' as `dt` union all
          select '夏初' as uid, '2023-03-13' as `dt` union all
          select '夏初' as uid, '2023-03-14' as `dt` union all
          select '夏初' as uid, '2023-03-15' as `dt`
) 
select 
uid,
dt,
follow_5_dt
from 
(select uid,dt
,last_value(dt) over(partition by uid order by dt asc rows between current row and 4 following) as follow_5_dt
,datediff(last_value(dt) over(partition by uid order by dt asc rows between current row and 4 following),dt) as diff_day
from tmp ) t where diff_day=4

结果:

相关推荐
小韩博37 分钟前
小迪第42课:PHP应用&MYSQL架构&SQL注入&跨库查询&文件读写&权限操作
sql·mysql·网络安全·架构·php
猫豆~3 小时前
Ansible自动运维——6day
linux·数据库·sql·缓存·云计算
last_zhiyin4 小时前
Oracle sql tuning guide 翻译 Part 4-1 --- 连接操作(Joins)
数据库·sql·oracle
-suiyuan-5 小时前
sqli-labs靶场1~2笔记
数据库·sql
xerthwis5 小时前
Hadoop:大数据世界的“古老基石”与“沉默的共生者”
大数据·人工智能·hadoop
爱好读书5 小时前
AI生成ER图|SQL生成ER图
数据库·人工智能·sql·毕业设计·课程设计
rannn_1116 小时前
【SQL题解】力扣高频 SQL 50题|DAY2+3
数据库·后端·sql·leetcode
l1t6 小时前
DeepSeek对Oracle 数据库新特性 SQL 宏的总结
数据库·人工智能·sql·oracle
一个天蝎座 白勺 程序猿6 小时前
Apache IoTDB(12):深度解析时序数据聚合的GROUP BY与HAVING子句
数据库·sql·apache·iotdb
武昌库里写JAVA7 小时前
java设计模式 - 工厂方法模式
vue.js·spring boot·sql·layui·课程设计