错题难题丨题目的业务逻辑要弄清楚

月均完成试卷数不小于3的用户爱作答的类别

https://www.nowcoder.com/practice/b1d13efcfa0c4ecea517afbdb9090845?tpId=240&tags=&title=&difficulty=0&judgeStatus=0&rp=0&sourceUrl=%2Fexam%2Foj%3Ftab%3DSQL%25E7%25AF%2587%26topicId%3D240

业务逻辑要弄清楚,完成次数和作答次数是不一样的

而且select的语句和过滤语句可以不一样,

过滤语句看可以用前面没有出现的、完全没有用过的


SELECT  
uid,
DATE_FORMAT(submit_time,'%Y%m') MONTH,
SUM(IF(submit_time is not NULL,1,0))tag_cnt
FROM exam_record 
WHERE DATE_FORMAT(submit_time,'%Y%m') is not null
GROUP BY uid,MONTH
HAVING SUM(IF(submit_time is not NULL,1,0))>=3;
#月均完成大于等于3套卷的用户们


SELECT 
tag,
SUM(IF(start_time is not NULL,1,0))tag_cnt 
FROM 
exam_record a
LEFT JOIN 
examination_info b
on a.exam_id=b.exam_id
WHERE uid 
in(SELECT uid FROM (SELECT  
													uid,
													DATE_FORMAT(submit_time,'%Y%m') MONTH,
													SUM(IF(start_time is not NULL,1,0))tag_cnt
										FROM exam_record 
										WHERE DATE_FORMAT(submit_time,'%Y%m') is not null
										GROUP BY uid,MONTH
										HAVING SUM(IF(submit_time is not NULL,1,0))>=3)
d)
GROUP BY tag
ORDER BY tag_cnt  desc
全部评论

相关推荐

07-14 13:37
重庆大学 C++
点赞 评论 收藏
分享
屌丝逆袭咸鱼计划:心态摆好,man,晚点找早点找到最后都是为了提升自己好进正职,努力提升自己才是最关键的😤难道说现在找不到找的太晚了就炸了可以鸡鸡了吗😤早实习晚实习不都是为了以后多积累,大四学长有的秋招进的也不妨碍有的春招进,人生就这样
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

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