题解 | #每天的日活数及新用户占比#

每天的日活数及新用户占比

http://www.nowcoder.com/practice/dbbc9b03794a48f6b34f1131b1a903eb

思路不清晰,太长了。。。
SELECT dt,dau,
IF(new_ids IS NULL,0.00,ROUND(new_ids/dau,2)) uv_new_ratio
FROM (
    SELECT dt,dau,new_ids
    FROM (
        SELECT DATE_FORMAT(ac_time,'%Y-%m-%d') dt,
        COUNT(DISTINCT uid) dau
        FROM(
            SELECT uid,DATE(in_time) ac_time
            FROM tb_user_log
            UNION
            SELECT uid,DATE(out_time) ac_time
            FROM tb_user_log
        )t1
        GROUP BY dt
    )t2
    LEFT JOIN (
        SELECT DISTINCT first_dt dt,
        COUNT(uid) new_ids
        FROM (
                SELECT uid,
                MIN(DATE(in_time)) AS first_dt FROM tb_user_log
                GROUP BY uid
            )t3
        GROUP BY first_dt
    )t4 USING(dt)
)t5
ORDER BY dt


全部评论

相关推荐

05-29 09:02
门头沟学院 Java
点赞 评论 收藏
分享
05-20 21:57
已编辑
门头沟学院 Java
喜欢吃卤蛋的悲伤蛙在...:建信融通没消息吧,我2说有实习挂简历不理了
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务