Hi, 我是小萝卜算子
一、简介
连续登录问题,是一个经典sql,本文从易到难,简单拓展,有更好方法的同学,欢迎私下交流
二、表结构(去过重的)
CREATE TABLE `user_login`( `id` int COMMENT '用户主键', `dt` string COMMENT '登录日期') |
三、表数据
user_login.id user_login.dt 1001 2021-12-12 1002 2021-12-12 1001 2021-12-13 1001 2021-12-14 1001 2021-12-16 1002 2021-12-16 1001 2021-12-19 1002 2021-12-17 1001 2021-12-20 |
四、需求: 求出连续3天登录的用户id
方法一:自关联
SELECT
tmp2.id
FROM
(
SELECT
tmp.id,
tmp.dt
FROM
(
SELECT
ul1.id,
ul1.dt
FR