题解 | #最差是第几名(二)#

最差是第几名(二)

http://www.nowcoder.com/practice/165d88474d434597bcd2af8bf72b24f1

/*
SELECT grade, sum(number) over(order by grade) 
FROM class_grade;

SELECT grade, sum(number) over(order by grade desc)
FROM class_grade
*/
SELECT t1.grade
FROM (SELECT grade, sum(number) over(order by grade) as r
FROM class_grade) as t1
join (SELECT grade, sum(number) over(order by grade desc) as r
FROM class_grade) as t2
on t1.grade = t2.grade
where t1.r >= (SELECT sum(number) FROM class_grade)/2 
and t2.r >= (SELECT sum(number) FROM class_grade)/2;
全部评论

相关推荐

点赞 收藏 评论
分享
牛客网
牛客企业服务