题解 | #牛客每个人最近的登录日期(三)#

牛客每个人最近的登录日期(三)

https://www.nowcoder.com/practice/16d41af206cd4066a06a3a0aa585ad3d

-- 思路是分别求出首次登录数和次日登录数
-- 首次登录数就是一共有几个独立访客
-- 次日登录数就是登录日期 - 首次登录日期 = 1的独立访客数
select
    round(
        count(
            distinct case
                when datediff (t2.date, t1.first_date) = 1 then t1.user_id
            end
        ) / count(distinct t2.user_id),
        3
    ) as p
from
    (
        select
            user_id,
            min(date) as first_date
        from
            login
        group by
            user_id
    ) as t1
    join login as t2 on t1.user_id = t2.user_id;

全部评论

相关推荐

夏目LTH:这个真的很看运气,多投吧。我从去年十二月底一直投到现在,之前没一个offer,结果两周前投的一家面试官聊的特别好,直接速通offer还给的SP待遇开的比我期望都够。
我的求职进度条
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

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