select round(count(t2.user_id)/count(t1.user_id),3) as p from login t1 left join login t2 on t1.user_id=t2.user_id and t1.date=t2.date-1 where (t1.user_id, t1.date) in (select user_id, min(date) from login group by user_id)
select round(count(t2.user_id)/count(t1.user_id),3) as p from login t1 left join login t2 on t1.user_id=t2.user_id and t1.date=t2.date-1 where (t1.user_id, t1.date) in (select user_id, min(date) from login group by user_id)