题解 | #考试分数(二)#

考试分数(二)

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

思路:聚合函数和表连接的使用

方法一:利用 score > avg(score),因为where条件中不能使用聚合函数,所以我们在where条件中直接写查询,查询出avg(score)

完整代码:

select *
from grade 
where score > (select avg(score) from grade g1 where g1.job = grade.job)
order by id

方法二:求出平均分数的表与原表连接 完整代码:

select g.*
from grade as g join (select job, avg(score) as score_avg from grade group by job) as s
on g.job = s.job
where g.score > s.score_avg
order by id
SQL练习 文章被收录于专栏

已完成牛客的SQL练习。接下来是算法的练习

全部评论
为什么方法一里 不需要加 group by 呢?
1 回复 分享
发布于 2022-04-13 15:53

相关推荐

头像
11-27 14:28
长沙理工大学
刷算法真的是提升代码能力最快的方法吗? 刷算法真的是提升代码能力最快的方法吗?
牛牛不会牛泪:看你想提升什么,代码能力太宽泛了,是想提升算法能力还是工程能力? 工程能力做项目找实习,算法也分数据结构算法题和深度学习之类算法
点赞 评论 收藏
分享
三年之期已到我的offer快到碗里来:9硕都比不上9本
点赞 评论 收藏
分享
评论
4
1
分享
牛客网
牛客企业服务