题解 | #月均完成试卷数不小于3的用户爱作答的类别#

月均完成试卷数不小于3的用户爱作答的类别

https://www.nowcoder.com/practice/b1d13efcfa0c4ecea517afbdb9090845

select
-- 3.最后聚合
    b.tag
    ,count(1) tag_cnt
from (
-- 1.要找到当月月均做题量>=3的人,就要先根据月份、用户进行分组,计算每人每月做题量。
-- 这里的目的只是找出我们要的uid
    select 
        uid
        ,month(start_time) my_month
        ,count(submit_time) cnt
    from exam_record
    group by uid,month(start_time)
) a 
inner join (
-- 2.把两个原始表合并得到全部想要的数据,
-- 这步之后我们已经得到了我们目标用户的全部做题数据,之后聚合、排序一下就可以了
    select 
        t1.uid
        ,t2.tag
    from exam_record t1
    inner join examination_info t2
    on t1.exam_id = t2.exam_id
) b
on a.uid = b.uid
-- 筛选做题量>=3的当月数据(这里题目没说明白,当月是9月)
where a.cnt>=3 and my_month = 9
group by b.tag
-- 4.排序
order by count(1) desc

全部评论

相关推荐

牛客37185681...:马德,我感觉这是我面过最恶心的公司,一面是两个女hr,说什么实习前几个月属于试用期,试用期过了才能转成正式实习生,我***笑了,问待遇就是不说,问能不能接受全栈,沙币公司
如果可以选,你最想去哪家...
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

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