求SQL语句:计算每个成绩段的学生人数
table1
number name score
100001 aaaa 10
100002 aaab 20
100003 aaac 15
... ... ...
成绩为0-100
分成20段
我知道可以每次求一段
select count(*)
from table1
where score>=0 and score <5
select count(*)
from table1
where score>=5 and score <10
我要用存储过程一次求出所有段的人数,有没有什么效率比较高的方法
另外想问一下,调用存储过程的开销是不是很大?比如每次返回一个成绩段的人数和把所有成绩段的人数求出后一次返回,哪个更好?为什么?
不知问题说清楚没有,感谢大家的帮助