select a.d, count(a.uid) as dau, round(count(b.uid) / count(a.uid), 2) as uv_new_ratio
from (select uid, date(in_time) as d
      from tb_user_log
      union
      select uid, date(out_time) as d
      from tb_user_log) a
         left join (select uid, min(date(in_time)) as d
                    from tb_user_log
                    group by uid) b on a.d = b.d and a.uid = b.uid
group by a.d
order by a.d;