牛客SQL刷题-2021-12-03 day4

1.SQL70 牛客每个人最近的登录日期(五)

牛客每天有很多人登录,请你统计一下牛客每个日期新用户的次日留存率。
有一个登录(login)记录表,简况如下:

牛客SQL刷题-2021-12-03 day4_第1张图片

牛客SQL刷题-2021-12-03 day4_第2张图片

解题思路

select date
        ,ifnull(
            round(
                (sum(case when (user_id,date)in
                    (select user_id,date_add(date,interval -1 day) 
                     from login)  and (user_id,date)in (select user_id,min(date)from login group by user_id)
                     then 1 else 0 end))/
                (sum(case when (user_id,date)in
                    (select user_id,min(date)from login group by user_id)
                    then 1 else 0 end))
                
                ,3)
            
            ,0)as p
from login
group by date
order by date;

你可能感兴趣的:(sql)