A. 分别统计及格及不及格的总人数用sql语句
这里提供一个各种数据库都通用的写法供参考
假设数据表结构为:
分数表(姓名,分数)
selectcount(t.p)as格及总人数,count(t.f)as不格及总人数
from(
select1asp,0asffrom分数表where分数>=60
unionall
select0,1from分数表where分数<60)t;
B. 使用SQL命令实现查询,查询平均分不及格的学生人数。怎么写啊
已知:
选课表(学号,课程编号,成绩)
查询平均分不及格的学生人数的SQL代码:
select 平均分不及格的学生人数 = count(*)
from 选课表
where 学号 in ( select 学号,avg(成绩)
from 选课表
group by 学号
having avg(成绩) < 60 )
C. 数据库查询不及格人数超过十人的课程的课程名,课程号和不及格人数
select cname,course.cno,count(*) 不及格人数
from course join sc on course.cno=sc.cno
where grade<60
group by cname,course.cno
having count(*)>10
D. SQL 查询某门课程及格的总人数以及不及格的总人数以及没成绩的人数
1、创建测试表,
create table test_score(class_id varchar2(20), student_id varchar2(20), score number);
E. 数据库语句,怎么通过select count 查询出相应课程不及格的人数
按课程号进行分组,统计不及格的人数即可
select 课程号,count(*) as 人数
from 成绩表 where score<60 group by 课程号
如需要显示课程名,再和课程表进行连接即可
F. SQL语句求助,查询出每门课程及格和不及格的人数
---以下在SQL2005执行通过--
---结果将以 科目、及格数、不及格数 显示
select * from
(select col2,count(*) as [及格数]
from tb
where col1>=60
group by col2
)t
outer apply
(select count(*) as [不及格数]
from tb
where col1<60 and t.col2= col2
group by col2
)m
-----这应该是楼主想要的了吧。