select dt,count(distinct uid) dau, round(count(if(is_new=1,1,null))/count(distinct uid),2) uv_new_ratio from (select t1.uid uid,dt,first_date, if(dt=first_date,1,0) is_new #判断当天是否为新用户 from (select uid,date(in_time) dt from tb_user_log union select uid,date(out_time) dt from tb_user_log)t1 #用户活跃的所有日期,in_time-进入时间和out_time-离开时间跨天了,在两天里都记为该用户活跃过 left join (select uid,min(date(in_time)) first_date from tb_user_log group by uid)t2#新用户表用户首次进入的时间 on t1.uid=t2.uid)t3#用户日志与新用户表左连接 group by dt order by dt asc ;

京公网安备 11010502036488号