
SQL Service数据查询操作 统计每门课程的选课人数及不及格人数
四个表,student(snum,sname,sex,dept,birthday,telephone),course(cnum,cname,credit,descr,de...
四个表,student(snum,sname,sex,dept,birthday,telephone),course(cnum,cname,credit,descr,dept,textbook),sc(snum,secnum,score),sections(secnum,cnum,pnum)
主要是原理上有问题,如果是分别求选课人数或是不及格人数那是很方便的,但是这个问题是要一个查询命令把两个信息都求出来,这个就比较奇怪了,因为查询所用的count()命令是统计某列的个数,如果在wherez语句中讲不及格的人筛选出来,那么就得不到总人数,如果得到总人数,不及格人数求难求了?求解答 展开
主要是原理上有问题,如果是分别求选课人数或是不及格人数那是很方便的,但是这个问题是要一个查询命令把两个信息都求出来,这个就比较奇怪了,因为查询所用的count()命令是统计某列的个数,如果在wherez语句中讲不及格的人筛选出来,那么就得不到总人数,如果得到总人数,不及格人数求难求了?求解答 展开
展开全部
select c.cnum,
c.cname,
count(1) "选课人数",
sum(case
when sc.score < 60 then
1
else
0
end) "不及格人数"
from course c, sections s, sc
where s.cnum = c.cnum
and sc.secnum = s.secnum
group by c.cnum, c.cname
c.cname,
count(1) "选课人数",
sum(case
when sc.score < 60 then
1
else
0
end) "不及格人数"
from course c, sections s, sc
where s.cnum = c.cnum
and sc.secnum = s.secnum
group by c.cnum, c.cname
本回答被提问者和网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?

2023-08-15 广告
通常情况下,我们会按照结构模型把系统产生的数据分为三种类型:结构化数据、半结构化数据和非结构化数据。结构化数据,即行数据,是存储在数据库里,可以用二维表结构来逻辑表达实现的数据。最常见的就是数字数据和文本数据,它们可以某种标准格式存在于文件...
点击进入详情页
本回答由光点科技提供
展开全部
可以使用子查询
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询