这样的SQL语句该怎么写?

来源:百度知道 编辑:UC知道 时间:2024/05/14 18:37:33
求教各位高手了!
两张表~
A表里面有 水平,分数段开始,分数段截止
B表里面有 学生,考分

我现在需要统计和得出总共多少学生达到什么成绩水平,连没有人达到的成绩和水平也显示出来.

现在使用:
第一:select 水平,分数段开始,分数段截止,count(学生) From A Inner Join B on B.考分 between a.分数段开始 and a.分数段截止 order by 水平,分数段开始,分数段截止
第二:select 水平,分数段开始,分数段截止,count(学生) From A,B where B.考分 between a.分数段开始 and a.分数段截止 order by 水平,分数段开始,分数段截止

查询出来的结果里面都是如果学生统计为0的就不显示水平和成绩范围了.
但是我要的是成绩范围和水平全都显示出来.然后再行统计学生数量.
这个语句该怎么写?

麻烦各位高手咯!

select 表1.水平,表1.分数段开始,表1.分数段截止,count(学生) as 统计
From 表1,表2
where 表2.考分 between 表1.分数段开始 and 表1.分数段截止
group by 水平,分数段开始,分数段截止

应该是这样吧

select a.水平,a.分数段开始a.分数段截止,count(学生) as 统计
From a,b
where b.考分 between a.分数段开始 and a.分数段截止
group by all 水平,分数段开始,分数段截止
(注group by 后要加all,这样统计数为0的也会在里面了)