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

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

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

全部评论

相关推荐

不愿透露姓名的神秘牛友
07-02 15:39
点赞 评论 收藏
分享
晗江雪:其实我只是觉得你们导员说的很好笑
点赞 评论 收藏
分享
程序员饺子:正常 我沟通了200多个 15个要简历 面试2个 全投的成都的小厂。很多看我是27直接不会了😅
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

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