关于SQL Server 2012中count的使用 15

我有两张表,我要查询选修了所有课程(课程号是01到08)的学生的姓名和选课数目应该怎么写?就用all这种方式比较,别用notexists,谢谢.学生表(这张图片看不清楚的... 我有两张表,我要查询选修了所有课程(课程号是01到08)的学生的姓名和选课数目应该怎么写?
就用all这种方式比较,别用not exists,谢谢.
学生表(这张图片看不清楚的话,保存到桌面放大可以看清楚):

选课表:

我是这样子写结果出不来:
/*检索学习全部课程的学生姓名*/
use studinfosystem
go
select name AS 姓名,count(select_course.stu_id) AS 选修课程数目
from student,select_course
group by name,student.stu_id,select_course.stu_id
having student.stu_id=select_course.stu_id and
count(select_course.stu_id)>=all(select count(select_course.stu_id) from select_course)
/*检索出每个学生所选课程与总课程比较只要大于等于就显示出来*/
展开
 我来答
百度网友cc7dce5
2015-01-13 · TA获得超过371个赞
知道小有建树答主
回答量:436
采纳率:0%
帮助的人:380万
展开全部
select name AS '姓名',(select count(*) from course where stu_id = student.stu_id) AS '选修课程数目' from student where (select count(*) from select_course where stu_id = student.stu_id) >= (select count(*) from select_course where course_id in(select distinct course_id from select_course) )

select_course 是 第二个表吧
追问
select_course是第二个表,你的我完全没有看懂。
1.查询课表里面的所有记录也就是查询课程总数 2.然后就看不懂了。'
追答
select count(*) from course where stu_id = student.stu_id   这个意思是查询该学生的课时

select distinct course_id from select_course 这个的意思是查询你有多少不同课程 这个是对不知道有多少课程是准备的

(select count(*) from select_course where course_id in(select distinct course_id from select_course) ) 那么这个就是 找到不同课程的总数

如果你知道那个课程是 8

那么就直接 >= 8 就好了
ZESTRON
2024-09-04 广告
在Dr. O.K. Wack Chemie GmbH,我们高度重视ZESTRON的表界面分析技术。该技术通过深入研究材料表面与界面的性质,为提升产品质量与可靠性提供了有力支持。ZESTRON的表界面分析不仅涵盖了相变化、化学反应、吸附与解吸... 点击进入详情页
本回答由ZESTRON提供
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式