题解 | 查询连续登陆的用户

查询连续登陆的用户

https://www.nowcoder.com/practice/9944210610ec417e94140ac09512a3f5

SELECT 
       s.user_id
FROM 
(    SELECT
        j2.user_id,
        j2.diff,
        COUNT(j2.diff) AS sh
     FROM (
        SELECT j1.user_id,j1.log_time,
            DATE_SUB(j1.log_time,INTERVAL ROW_NUMBER() OVER(
                PARTITION BY j1.user_id
                ORDER BY j1.log_time
            ) DAY ) AS diff
        FROM (
            SELECT r.user_id,DATE(l.log_time) AS log_time
            FROM register_tb r 
            JOIN login_tb l USING(user_id)
            GROUP BY r.user_id,DATE(l.log_time)
             ) j1
        ) j2
     GROUP BY  j2.user_id,j2.diff
) s 
GROUP BY s.user_id
HAVING MAX(s.sh) >= 3

全部评论

相关推荐

03-31 14:46
已编辑
门头沟学院 Web前端
励志成为双港第一ja...:这其实很正常,离的太远了,他认为你不会来,就为了混个面试,而且成本很高,实习生都优先选本地高校。吃了地域的亏,所有很多时候地域可能比院校层次更重要。
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务