最大连续登陆天数问题在SQL领域,不管是刚入门的小白还是工作几年的大牛给人的感觉就是比较棘手且细思极恐的问题,今天我们通过两个案例从不同角度去了解连续登陆问题以及连续登陆问题变化的场景。消除恐惧的最好办法就是面对恐惧,加油 !奥利给!
某游戏公司有两张用户登陆表分别为user_login01 和 user_login02,现有需求想要求出每个用户的最大连续登陆天数。用户表中有用户id
user_id 和登陆日期 login_date.
需求1:每个用户的最大连续登陆天数(日期之间不可以隔天即为连续登陆)
需求2:计算每个用户最大的连续登录天数,定义连续登录时可以间隔一天。(例如:2022-01-05、2022-01-06、2022-01-08、2022-01-10 最大连续登陆天数为4天)
需求1
数据准备
--创建表
CREATE TABLE user_login01
(
uid int,
login_date date
);
--导入数据
insert into user_login01 values
(1001,'2013-05-06')
,(1001,'2013-05-07')
,(1001,'2013-05-08')
,(1001,'2013-05-09')
,(1001,'2013-06-23')
,(1001,'2013-06-24')
,(1001,'2013-06-25')
,(1001,'2013-06-26')
,(1001,'2013-06-27')
,(1002,'2013-07-06')
,(1002,'2013-07-07')
,(1002,'2013-07-08')
,(1002,'2013-07-09')
,(1002,'2013-08-01')
,(<