题解 | #得分不小于平均分的最低分#

得分不小于平均分的最低分

http://www.nowcoder.com/practice/3de23f1204694e74b7deef08922805b2

一、明确需求

  1. 题目要求:找到SQL试卷得分不小于该类试卷平均得分的用户最低得分。
  2. 需求解读:需要限制试卷类别为"SQL",计算平均得分
  3. 观察数据:exam_record表只有exam_id没有“sql”类别,需要联结examination_info匹配tag进行限制。

二、解题思路

  1. exam_record联结examination_info表,限制tag="SQL"作为源表t1
  2. 对t1根据tag为一组计算avg(score)
  3. 对2的结果作为where子查询的筛选条件,对整个结果取min(score)

三、代码实现

#筛选数据
with 
t1 as 
(
select a.*,b.tag
from exam_record a inner join examination_info b using(exam_id)
where b.tag = 'SQL' 
),

# 计算平均值
t2 as 
(
select avg(score) avg_score
from t1
group by tag
)

select min(score) min_score_over_avg
from t1 
where score >= (select avg_score from t2)
全部评论

相关推荐

smile丶snow:项目完成时间要写一个大概的区间,自己顺延一下就行。感觉ai对话的放第一个比较好。可以自己编一些场景或者找ai编一个场景。就是你为什么要写这个仿DeepSeek对话应用。比如你自己有很多文档,这个ai可以基于你自己的文档回答之类的。个人建议~具体看你自己。 还有项目中用到那些更好让ai coding的方法也可以写一下,毕竟现在ai大跃进…
简历被挂麻了,求建议
点赞 评论 收藏
分享
不愿透露姓名的神秘牛友
04-22 13:08
Data_Seven:真不知道这些企业哪来的成就感
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

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