题解 | #统计作答次数#

月总刷题数和日均刷题数

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

SELECT DATE_FORMAT(submit_time,'%Y%m') AS submit_month, COUNT() AS month_q_cnt, ROUND( COUNT() / avg(DAY(LAST_DAY(submit_time)) ),3 ) AS avg_day_q_cnt FROM practice_record WHERE score IS NOT NULL AND YEAR(submit_time)='2021' GROUP BY DATE_FORMAT(submit_time,'%Y%m')

UNION ALL

SELECT '2021汇总' AS submit_month, COUNT() AS month_q_cnt, ROUND(COUNT() / 31,3) avg_day_q_cnt FROM practice_record WHERE score IS NOT NULL AND YEAR(submit_time)='2021' ORDER BY submit_month ;

#简单来说,每个月都有好多个submit_time,随之对应的就是last_day返回好多个31或者30,count(submit_time)是一个数, #假定为6,那么6/(30,30,30,30,30,30)必然报错,所以我们要去重,用max,min,都行或者求平均数 主要还是分组的问题。

全部评论

相关推荐

萧索X:写篮球联赛干嘛,陪老板打篮球吗。还有实习经历要写自己所在岗位具体完成什么工作,自己的任务具体完成了什么需求,给公司带来了哪些量化增长
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

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