sql大神进,这两题怎么做?上面是问题,下面是数据库表

1.查询课程编号为1002和1003两科都及格的同学编号。2.查询课程编号为1002和1003中只有一科及格的同学编号。Createtabletb_stuToCourse... 1.查询课程编号为1002和1003两科都及格的同学编号。
2.查询课程编号为1002和1003中只有一科及格的同学编号。
Create table tb_stuToCourse
(
stuNo varchar(9) not null,
semester varchar(20)not null,
courseNo varchar(7)not null,
score int,
empNo varchar(10),
constraint pk_tb_stuToCourse primary key(stuNo,semester,courseNo),
constraint fk_tb_stuToCourse_tb_course_courseNo foreign key(courseNo)references tb_course(courseNo),
constraint fk_tb_stuToCourse_tb_student_stuNo foreign key(stuNo)references tb_student(stuNo)
)
Insert into tb_stuToCourse(stuNo, semester, courseNo,score,empNo) values(‘200100001’,’2005-2006第一学期’,’4350010’,'89','00002');
Insert into tb_stuToCourse(stuNo, semester, courseNo,score,empNo) values(‘200100001’,’2007-2008第二学期’,’4360010’,'89','00012');
Insert into tb_stuToCourse(stuNo, semester, courseNo,score,empNo) values(‘200100002’,’2007-2008第一学期’,’4330010’,'67','00001');
Insert into tb_stuToCourse(stuNo, semester, courseNo,score,empNo) values(‘200100002’,’2005-2006第一学期’,’4340021’,'null','00001');
Insert into tb_stuToCourse(stuNo, semester, courseNo,score,empNo) values(‘200200001’,’2005-2006第二学期’,’4330010’,'75','00004');
Insert into tb_stuToCourse(stuNo, semester, courseNo,score,empNo) values(‘200200002’,’2005-2006第二学期’,’4330010’,'82','00004');
Insert into tb_stuToCourse(stuNo, semester, courseNo,score,empNo) values(‘200200002’,’2005-2006第二学期’,’4630010’,'null','00012');
Insert into tb_stuToCourse(stuNo, semester, courseNo,score,empNo) values(‘200200003’,’2005-2006第二学期’,’4330010’,'69','00004');
Insert into tb_stuToCourse(stuNo, semester, courseNo,score,empNo) values(‘200200004’,’2005-2006第一学期’,’5220021’,'64','00005');
Insert into tb_stuToCourse(stuNo, semester, courseNo,score,empNo) values(‘200200004’,’2005-2006第一学期’,’5210011’,'78','00017');
Insert into tb_stuToCourse(stuNo, semester, courseNo,score,empNo) values(‘200300008’,’2005-2006第一学期’,’5210011’,'77','00005');
Insert into tb_stuToCourse(stuNo, semester, courseNo,score,empNo) values(‘200300008’,’2005-2006第一学期’,’5220021’,'69','00006');
Insert into tb_stuToCourse(stuNo, semester, courseNo,score,empNo) values(‘200300044’,’2005-2006第一学期’,’4630010’,'78','00012');
展开
 我来答
SQL的艺术
2018-04-20 · SQL写多了就会在追求极致
SQL的艺术
采纳数:2040 获赞数:3323

向TA提问 私信TA
展开全部

仔细看了一下,课程编号里就没有1002和1003,所以,上图是没有查到任何结果

--1.查询课程编号为1002和1003两科都及格的同学编号。
select
stuNo
from
tb_stuToCourse
where
courseNo in(1002,1003)
and score>=60
group by
stuNo
having count(0)=2
--2.查询课程编号为1002和1003中只有一科及格的同学编号。
select
stuNo
from
tb_stuToCourse
where
courseNo in(1002,1003)
and score>=60
group by
stuNo
having count(0)=1
go
更多追问追答
追问
为什么要这样写?group by stuNo having count(0)=2是什么意思?group by  stuNo having count(0)=1 go 这个是什么意思?
追答
两科:having count(0)=2
只有一科:having count(0)=1
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式