题解 | #连续两次作答试卷的最大时间窗#

连续两次作答试卷的最大时间窗

https://www.nowcoder.com/practice/9dcc0eebb8394e79ada1d4d4e979d73c

with t1 as(
select
    uid,
    timestampdiff(day,date_format(lag(start_time) over(partition by uid order by start_time),'%Y%m%d'),date_format (start_time, '%Y%m%d') + 1) as days_window
from
    exam_record
where
    year(start_time) = 2021),
t2 as (
select
    uid,
    count(exam_id)/timestampdiff(day,date_format(min(start_time),'%Y%m%d'),date_format(max(start_time),'%Y%m%d')+ 1) as avg_exam
from
    exam_record
where
    year(start_time) = 2021 
group by
    uid)

select
    t1.uid,
    max(t1.days_window) as days_window,
    round(max(t1.days_window) * t2.avg_exam,2) as avg_exam_cnt
from
    t1
left join
    t2
on
    t1.uid = t2.uid
where
    days_window > 1
group by
    t1.uid
order by
    days_window desc,
    avg_exam_cnt desc

全部评论

相关推荐

01-02 21:17
已编辑
西安理工大学 后端
程序员小白条:项目不太重要,你的优势的算法竞赛,然后多背相关的八股文,项目可以不作为重点考虑,面试可能就简单带过项目就行了,你可以直接写简历,背项目相关的八股文就行,也不用自己做,时间紧张的情况下,性价比最高
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客企业服务