1.首先获取每个日期可能存在新用户

通过日期进行分组,然后获取相应的日期。相对于每个用户最新的登录登录注册时间进行比较。

case when (date,user_id) in select min(date),user_id ... then 1 else 0 end =>sum 获得新用户的总数

2.获取第二天继续登录的新用户有哪些

通过date_add(date,interval 1 day)  查找  
为了避免除数为0  使用case when  then 1 else 等于本身 end

3.通过round(...,3) 计算3位小数。