题解 | 牛客每个人最近的登录日期(五)
牛客每个人最近的登录日期(五)
https://www.nowcoder.com/practice/ea0c56cd700344b590182aad03cc61b8
select distinct
date,
round(if (p is null, 0, p), 3)
from
login login1
left join (
select
fdate,
count(date) / count(fdate) p
from
(
select
user_id,
min(date) fdate,
date_add(min(date), interval 1 day) sdate
from
login
group by
user_id
) as t1
left join login on t1.user_id = login.user_id
and t1.sdate = login.date
group by
fdate
) as t2 on login1.date = t2.fdate
order by
date
表连接加到厌倦,先想办法算出p,然后连接日期就好了

