with t as ( select uid,date(in_time) dt from tb_user_log union select uid,date(out_time) dt from tb_user_log) , k as (select *,row_number() over (partition by uid order by dt) rk from t) select k1.dt,round(count(k2.uid)/count(k1.uid),2) uv_left_rate from k as k1 left join k as k2 on k1.uid=k2.uid a...