1.熟练掌握SQL Server查询分析器的使用方法,加深对标准SQL查询语句的理解。
2.熟练掌握简单表的数据嵌套查询和数据更新的操作方法。
实验内容:
在学号数据库“2019001”中创建3-2中的三张表并添加数据,实现数据的嵌套查询及数据更新操作。
实验步骤:
在学号数据库“2019001”中写出下列操作的SQL语句:
1、查询年龄大于所在系平均年龄的同学的学号、姓名和所在系;
select x.sno,x.sname,x.sdept
from student2 x
where x.sage>(select avg(sage)
from student2 y
where x.sdept=y.sdept)
2、查询选修了全部课程的学生的学号和姓名;
select student2.sno,sname
from student2
where sno in (select sno
from ssc
group by sno
having count(*)= (select count(*)
from course)
)
3、查询选修了95001选修的全部课程的学生的学号;(选做)
不会
4、验证union、intersect、except;略
5、新建表sno_avg,表中包含学号和平均成绩两列;把有选课记录的同学的学号和所选课程的平均成绩插入到sno_avg表中;
create table sno_avg(
sno char(9),
grade char(9)
)
insert sno_avg(sno,grade)
select sno,avg(grade)
from ssc
group by sno
6、把所有“数据库”课程的选课成绩置成零分;
update ssc
set grade=0 where cno in(
select cno
from course
where cname='数据库'
)
7、删除“数据库”课程的选课记录;
delete
from ssc
where cno in(
select cno
from course
where cname='数据库')
8、验证违反约束的更新操作:略
A、insert 语句违反约束;
B、Update 语句违反约束;
C、Delete 语句违反约束;