题解 | #月总刷题数和日均刷题数#

月总刷题数和日均刷题数

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

我就要搞不一样的

with t1 as (
    select '01' month, 31 days from dual
    UNION select '02' month, 28 days from dual
    UNION select '03' month, 31 days from dual
    UNION select '04' month, 30 days from dual
    UNION select '05' month, 31 days from dual
    UNION select '06' month, 30 days from dual
    UNION select '07' month, 31 days from dual
    UNION select '08' month, 31 days from dual
    UNION select '09' month, 30 days from dual
    UNION select '10' month, 31 days from dual
    UNION select '11' month, 30 days from dual
    UNION select '12' month, 31 days from dual
), t2 as (
    select uid, DATE_FORMAT(submit_time, '%Y%m') submit_month, DATE_FORMAT(submit_time, '%m') month
    from practice_record
    where DATE_FORMAT(submit_time, '%Y')=2021 
), t3 as (
    select t2.submit_month, count(t2.uid) month_q_cnt, round(count(t2.uid)/t1.days,3) avg_day_q_cnt
    from t1 JOIN t2 on t1.month = t2.month
    group by t2.submit_month, t1.days
    order by submit_month
), t4 as (
    select "2021汇总" submit_month, count(uid) month_q_cnt, round(count(uid)/31,3) avg_day_q_cnt
    from t2
), t5 as (
    select * from t3
    UNION
    select * from t4
)
select* from t5





全部评论

相关推荐

点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客企业服务