select a.grade from(select grade,sum(number)over(order by grade)s from class_grade)a join class_grade cg on a.grade=cg.grade

where (select sum(number)/2 from class_grade) between (a.s-cg.number) and a.s order by a.grade