题解 | 查询连续登陆的用户
查询连续登陆的用户
https://www.nowcoder.com/practice/9944210610ec417e94140ac09512a3f5
with t1 as
(
select
user_id,
date(log_time) as date_time,
ROW_NUMBER() over (partition by user_id) as rk
from
login_tb
)
,
t2 as
(
select
user_id,
date_sub(date_time, interval rk day) as grp
from
t1
)
select
user_id
from
(
select
user_id,
count(user_id) as conti_day,
grp
from t2
group by user_id, grp
) as t3
where
conti_day >= 3 and user_id in (select user_id from register_tb)
order by user_id asc