--(1)将一个新生插入到Student表中,其学号为:0821105,姓名为:陈冬,性别为:男,年龄18岁,信息管理系学生。
insert into Student values('0821105','陈冬','男','18','信息管理系');
--(2)在SC表中插入3条新记录,学号均为“0821105”,选修的课程号分别为“C001”、“C002”和“C004”,成绩分别为:90、88和NULL。
insert into SC values('0821105','C001','90'),
('0821105','C002','88'),
('0821105','C004','null');
--(3)将一新学生插入到student表中,其学号为:0811105,姓名为:李丽,性别为:女,年龄暂缺,计算机系学生。
insert into Student values('0811105','李丽','女','','计算机系');
--(4)统计每门课程的平均成绩,并把统计结果保存到一个新表X4中。
select AVG(grade) 平均成绩 into X4 from SC where grade is not null group by Cno ;
--(5)通过使用TOP子句插入数据。建立一个新表Top_Grade,结构包括学生姓名、所在系、选的课程名和考试成绩, 将查询结果的前6行数据插入Top_Grade表。
select top 6 s.sname 学生姓名, dept 所在系,Cname 课程名,Grade 考试成绩 into Top_Grade
from student s join SC c on s.sno=c.Sno
join course co on c.cno=co.cno
order by Grade desc;
--(6)将所有学生的年龄加1。
update student set sage=sage+1;
--(7)将“C001”号课程的学分改为5。
update Course set Credit=5 where Cno='C001';
--(8)将计算机系全体学生的成绩加5分。
update SC set Grade+=5 where Sno in (select Sno from student where Dept ='计算机系');
--(9)将Java课程改为第2学期开设,3个学分。
update Course set Semester=2 , credit=3 where cname='Java';
--(10)将SC表复制成为SCnew1,在SCnew1中删除所有学生的选课记录。
select *into SCnew1 from SC;
delete from SCnew1;
--(11)将SC表复制成为SCnew2,在SCnew2中删除所有不及格学生的选课记录。
select *into SCnew2 from SC;
delete from SCnew2 where Grade<60;
--(12)将SC表复制成为SCnew3,在SCnew3中删除计算机系不及格学生的选课记录。
select *into SCnew3 from SC;
delete from SCnew2 where Grade<60 and sno in (select Sno from student where Dept ='计算机系');
--(13)删除JAVA考试成绩最低的学生的JAVA修课记录。
delete from SC where grade <=
(select MIN(grade) from SC c join course co on c.cno=co.cno group by Cname having Cname='Java')
and cno in(select Cno from Course where Cname='Java');
--(14) 将学分最低的课程的学分加2分。
update Course set Credit+=2 where Credit<=(select MIN(credit) from Course );