题解 | #考试分数(二)#
考试分数(二)
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练习。接下来是算法的练习