SQL查询 统计每门课的选课人数及不及格人数

2025-04-19 16:34:08
推荐回答(2个)
回答1:

select a.cnum,a.cname,a.rs,b.bjg_rs
from

(select sec.cnum,c.cname,count(s.snum) as 'rs'
from student s,course c,sc,sections sec
where s.snum = sc.snum and
sc.secnum = sec.secnum and
sec.cnum = c.cnum
group by sec.cnum,c.cname) a

left join

(select sec.cnum,c.cname,count(s.snum) as 'bjg_rs'
from student s,course c,sc,sections sec
where s.snum = sc.snum and
sc.secnum = sec.secnum and
sec.cnum = c.cnum and
sc.score < '60'
group by sec.cnum,c.cname) b

on a.cnum = b.cnum

回答2:

你确定你写的这四个表没有问题么?如果你一个学生 选了2个科目,你怎么储存这个信息?

看完楼主发的图片后,感觉你的描述和图片表达的意思有出入。等待其他大虾赐教,学习了