select
round(count(distinct t2.user_id)/count(distinct t1.user_id),3) as p
from
(select user_id,date from login)t1
left join
(select user_id,date from login)t2
on t1.user_id=t2.user_id
and t2.date=date_add(t1.date,interval 1 day)