题解 | #统计活跃间隔对用户分级结果#

统计活跃间隔对用户分级结果

https://www.nowcoder.com/practice/6765b4a4f260455bae513a60b6eed0af

select

    user_grade,

    round(count(uid)/max(user_cnt),2) as ratio

from

(

    select

        uid,

        user_cnt,

        case "忠实用户" when frist_dt < 7_ago and last_dt between 7_ago and nt

        case "新晋用户" when frist_dt between 7_ago and nt

        case "沉睡用户" when last_dt between 30_ago and 7_ago

        case "流失用户" when last_dt < 30_ago else null end as user_grade

    from

    (

    select

        uid,

        nt,

        user_cnt,

        frist_dt,

        last_dt,

        date_sub(nt, interval 6 day) as 7_ago, # 七天时间点

        date_sub(nt, interval 29 day) as 30_ago # 一个月时间点

    from

        (

        (

                (

                    select

                uid,

                date(max(out_time)) as last_dt

                from tb_user_log

                group by uid

                ) as aa

            # 每个用户的最后一次

            left join

                (

                    select

                    date(max(out_time)) as nt,

                    COUNT(DISTINCT uid) as user_cnt

                from tb_user_log

                ) as bb

            # 最近时间

            on 1

        ) as tb_4 left join

        (

            select

                uid,

                date(min(in_time)) as frist_dt

            from tb_user_log

            group by uid

            # 每个用户的第一次

        ) as b_ using(uid)

        ) as tb_1

    ) as tb_2

) as tb_3

group by user_grade

order by ratio desc

全部评论
不知道哪里有问题呀,有大神看看吗
点赞
送花
回复 分享
发布于 2023-03-21 19:48 香港
我也不懂 但是好厉害
点赞
送花
回复 分享
发布于 2023-06-17 19:06 内蒙古
蔚来
校招火热招聘中
官网直投
你拿到数分的offer了嘛
点赞
送花
回复 分享
发布于 2023-06-17 19:07 内蒙古

相关推荐

黎明azzz:刘女士吓坏了
点赞 评论 收藏
分享
1 收藏 评论
分享
牛客网
牛客企业服务