请问为什么省去一层嵌套之后没法通过呢? SELECT ( CASE WHEN last_dt_diff >= 30 THEN "流失用户" WHEN last_dt_diff >= 7 THEN "沉睡用户" WHEN first_dt_diff < 7 THEN "新晋用户" ELSE "忠实用户" END) as user_grade, round(COUNT(uid) / MAX(user_cnt),2) as ratio FROM ( SELECT uid, user_cnt, TIMESTAMPDIFF(DAY,first_dt,cur_dt) as first_dt_diff, TIMESTAMPDIFF(DAY,last_dt,cur_dt) as last_dt_diff FROM ( SELECT uid, MIN(DATE(in_time)) as first_dt, MAX(DATE(out_time)) as last_dt FROM tb_user_log GROUP BY uid ) as t_uid_first_last LEFT JOIN ( SELECT MAX(DATE(out_time)) as cur_dt, COUNT(DISTINCT uid) as user_cnt FROM tb_user_log ) as t_overall_info ON 1 ) as t_user_info GROUP BY user_grade ORDER BY ratio DESC;
点赞

相关推荐

沟头学院:无关比赛不要写,这样会显着你主次不分,比赛不要撒谎,有哪些就写那些,创新创业建议删除。技能特长可以适当夸大。
点赞 评论 收藏
分享
点赞 评论 收藏
分享
牛客网
牛客企业服务