麻烦各位大神 用SQL语句 帮我解决关于 数据库系统 的问题
假设教学数据库中有三个关系:学生关系:S(SNO,SNAME,AGE,SEX)学习关系:SC(SNO,CNO,GRADE)课程关系:C(CNO,CNAME)其中SNO,C...
假设教学数据库中有三个关系:
学生关系:S (SNO, SNAME, AGE, SEX)
学习关系:SC (SNO, CNO, GRADE)
课程关系:C (CNO, CNAME)
其中SNO, CNO, SNAME, AGE, SEX, GRADE, CNAME分别表示学号、课程号、姓名、年龄、性别、成绩和课程名,用SQL语句表达下列操作:
(1)检索学习课程号为C2的学生的学号与成绩
(2)检索选修课程名称为MATHS的学生的学号与姓名
(3)检索平均成绩超过80分的学生学号和平均成绩
(4)把姓名是S5的学生的成绩从SC表中删除 展开
学生关系:S (SNO, SNAME, AGE, SEX)
学习关系:SC (SNO, CNO, GRADE)
课程关系:C (CNO, CNAME)
其中SNO, CNO, SNAME, AGE, SEX, GRADE, CNAME分别表示学号、课程号、姓名、年龄、性别、成绩和课程名,用SQL语句表达下列操作:
(1)检索学习课程号为C2的学生的学号与成绩
(2)检索选修课程名称为MATHS的学生的学号与姓名
(3)检索平均成绩超过80分的学生学号和平均成绩
(4)把姓名是S5的学生的成绩从SC表中删除 展开
展开全部
(1)检索学习课程号为C2的学生的学号与成绩
select sno,grade from sc where cno="c2"
(2)检索选修课程名称为MATHS的学生的学号与姓名
select sno,sname from sc,s,c where sc.sno=s.sno and sc.cno=c.cno and cname="MATHS"
或者用嵌套语句:
select sno,sname from s
where sno in(select sno from sc where cno=(select from c where cname="MATHS"))
(3)检索平均成绩超过80分的学生学号和平均成绩
select sno as 学号,avg(score) as 平均成绩 from sc group by sno having avg(score)>80
(4)把姓名是S5的学生的成绩从SC表中删除
delete from sc where sno in(select sno from s where sname="S5")
select sno,grade from sc where cno="c2"
(2)检索选修课程名称为MATHS的学生的学号与姓名
select sno,sname from sc,s,c where sc.sno=s.sno and sc.cno=c.cno and cname="MATHS"
或者用嵌套语句:
select sno,sname from s
where sno in(select sno from sc where cno=(select from c where cname="MATHS"))
(3)检索平均成绩超过80分的学生学号和平均成绩
select sno as 学号,avg(score) as 平均成绩 from sc group by sno having avg(score)>80
(4)把姓名是S5的学生的成绩从SC表中删除
delete from sc where sno in(select sno from s where sname="S5")
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询