期末复习之sql语句

1.将计算机学院全体学生的成绩置零

update sc 
set grade=0 
where sno in(
select sno 
from student
where sdept="计算机学院"
)

2.查询学生及其选修课的情况

select student.*,cno,grade 
from student,sc
where student.sno=sc.sno(+) 

3.查询平均成绩高于或等于’ 1’号课程最高成绩的学生情况 。

select student.* 
from student
where sno in
(
select sno 
from sc
group by sno 
having avg(grade)>=( 
select max(grade)
from sc 
where cno="1"
)
)

4.建立计算机学院选修了1号课程且成绩在90分以上的学生的视图

create view stu as
select student.*
from student,sc

where 
student.sno=sc.sno

and cno="1"

and grade>=90

5.成绩平均分超过85的课程,并按平均分升序排列

select cno,avg(grade)
from sc
group by cno asc
having
avg(grade)>=85

6.查询其他学院中比计算机学院某一学生年龄小的学生姓名和年龄

select sname,sage
from student
where sdept <>"计算机学院"
and sage < any(
select sage from student 
where sdept ="计算机学院"
)

7.查看成绩高于85分的学生信息及成绩情况

select student.* ,sc.*
from student,sc
where student.sno=sc.sno
and grade>=85

8.查询每一门课的间接先修课(即先修课的先修课)

select first.cno,second.cpno
from course first,course second
where first.cpno=second.cno

 

  • 0
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值