题解 | #试卷发布当天作答人数和平均分#

试卷发布当天作答人数和平均分

https://www.nowcoder.com/practice/5b58e89556dc4153a79d8cf8c08ba499

首先确定select后的字段为exam_id,count(distinct uid),avg(score),在这里首先确定uv计算的人数需要去重所以用distinct关键字,其次确定score的空置不影响avg函数计算所以不对空置做任何处理。

其次题目中给出了三个表,通过对三个表的观察,确定from后的字段为三表关联查询,找到关联字段消除笛卡尔积。

再次,确定where后的条件为‘SQL’试卷,试卷发布当天,五级以上用户

最后用group by分组。

select exam_id,       
    count(distinct uid) uv,
    round(avg(score),1) avg_score
from exam_record er
    left join user_info ui
	using(uid)
	left join examination_info ei
	using(exam_id)
where tag='SQL'
    and date_format(start_time,'%Y%m%d')=date_format(release_time,'%Y%m%d')
	and level>5
group by exam_id;
全部评论

相关推荐

点赞 评论 收藏
分享
Yki_:你要算时间成本呀,研究生两三年,博士三四年,加起来就五六年了,如果你本科去腾讯干五年,多领五年的年薪,加上公司内涨薪,可能到时候十五年总薪资也跟博士差不多
点赞 评论 收藏
分享
05-19 15:21
已编辑
华南农业大学 Java
白火同学:你才沟通了200,说实话,北上广深杭这里面你连一座城市的互联网公司都没投满呢,更别说还有各种准一线二线城市了。等你沟通突破了三位数,还没结果再考虑转行的事吧。
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

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