错题丨添加自定义数据进字段中
月总刷题数和日均刷题数
https://www.nowcoder.com/practice/f6b4770f453d4163acc419e3d19e6746?tpId=240&tqId=2183006&ru=/exam/oj&qru=/ta/sql-advanced/question-ranking&sourceUrl=%2Fexam%2Foj%3Ftab%3DSQL%25E7%25AF%2587%26topicId%3D240
如何将自定义数据塞进字段中:
用select语句就行了,如 union all SELECT '2021汇总' as submit_month
union all select '自定义数据' as 字段名
还出现的另外几个函数: lastday函数就是找出时间的最后一天,用来找31天和30天的,
记住出来的时间是年-月-日这样的格式,
还是需要day函数单个提取30或者31
记得外面套个max,小数据不放max还可以,大量数据的话不放max容易报错
SELECT
DATE_FORMAT(submit_time,'%Y%m')submit_month,
count(submit_time) month_q_cnt,
ROUND(COUNT(submit_time)/MAX(DAY(LAST_DAY(submit_time))),3)avg_day_q_cnt
FROM practice_record
where DATE_FORMAT(submit_time,'%Y') = '2021' and score is not null
group by DATE_FORMAT(submit_time,'%Y%m')
UNION ALL
SELECT '2021汇总' as submit_month,
count(submit_time) month_q_cnt,
ROUND(count(submit_time)/31,3)avg_day_q_cnt
FROM practice_record
where DATE_FORMAT(submit_time,'%Y') = '2021' and score is not null
ORDER BY submit_month