select l1.date,ifnull(round(p1/p2,3),0) from (select date,sum(case t_rank when 1 then 1 else 0 end ) p2 from (select date,row_number() over (partition by user_id order by date) t_rank from login ) a group by date) l1 left join (select date,count(user_id) p1 from login where (user_id,adddate(date,1))...