先贴部分delete from 选修 where 课程号=(select 课程号 from 课程 where 课程名='C语言') select 学号,姓名,性别 from 选修 where 学号 in (select 学号 from 学生 where 所在系='计算机系' and 学号 in (select distinct 学号 from 选修))
1.delete 选修 where 课程号 in (select 课程号 from 课程 where 课程名='C语言') 2.select 学号,姓名,性别 from 学生 where 所在系='计算机系' and 学号 in (select 学号 from 选修) 3.create view 系与成绩 as select 所在系,avg(成绩) 成绩 from 学生 a,选修 b where a.学号=b.学号 group by 所在系 4. select b.课程名,avg(成绩) from 选修 a,课程 b where a.课程号=b.课程号 group by b.课程名 order by 2 desc 5. select top 1 b.课程名,avg(成绩) from 选修 a,课程 b where a.课程号=b.课程号 group by b.课程名 order by 2 desc 6. grant all on 系与成绩 to public
1 delete 选修 from 选修 a join 课程 b on a.课程号=b.课程号 where b.课程名='C语言'2 select distinct a.学号,a.姓名,a.性别 from 学生 a join 选修 b on a.学号=b.学号 where a.所在系='计算机系' -- OR select a.学号,a.姓名,a.性别 from 学生 a join 选修 b on a.学号=b.学号 where a.所在系='计算机系' group by a.学号,a.姓名,a.性别3 create view 系与成绩 as select a.所在系,平均成绩=avg(b.成绩) from 学生 a join 选修 b on a.学号=b.学号 group by a.所在系4 select a.课程,平均成绩=avg(b.成绩) from 课程 a join 选修 b on a.课程号=b.课程号 group by a.课程 order by avg(b.成绩) desc5 select top 1 a.课程,平均成绩=avg(b.成绩) from 课程 a join 选修 b on a.课程号=b.课程号 group by a.课程 order by avg(b.成绩) desc6 grant all on 系与成绩 to public
第二个有问题,改动一下顺便贴上第三个select 学生.学号,姓名 from 选修,学生 where 学生.学号 in (select 学号 from 学生 where 所在系='计算机系' and 学号 in (select distinct 学号 from 选修)) and 学生.学号=选修.学号select 所在系,sum(分数)/count(*) as 平均分 from 学生,选修 where 学生.学号=选修.学号 group by 所在系
select 学号,姓名,性别 from 选修 where 学号 in (select 学号 from 学生 where 所在系='计算机系' and 学号 in (select distinct 学号 from 选修))
2.select 学号,姓名,性别 from 学生 where 所在系='计算机系' and 学号
in (select 学号 from 选修)
3.create view 系与成绩 as select 所在系,avg(成绩) 成绩
from 学生 a,选修 b where a.学号=b.学号
group by 所在系
4. select b.课程名,avg(成绩)
from 选修 a,课程 b where a.课程号=b.课程号
group by b.课程名 order by 2 desc
5. select top 1 b.课程名,avg(成绩)
from 选修 a,课程 b where a.课程号=b.课程号
group by b.课程名 order by 2 desc
6. grant all on 系与成绩 to public
delete 选修 from 选修 a join 课程 b on a.课程号=b.课程号 where b.课程名='C语言'2
select distinct a.学号,a.姓名,a.性别 from 学生 a join 选修 b on a.学号=b.学号 where a.所在系='计算机系'
-- OR
select a.学号,a.姓名,a.性别 from 学生 a join 选修 b on a.学号=b.学号 where a.所在系='计算机系' group by a.学号,a.姓名,a.性别3
create view 系与成绩
as
select a.所在系,平均成绩=avg(b.成绩) from 学生 a join 选修 b on a.学号=b.学号 group by a.所在系4
select a.课程,平均成绩=avg(b.成绩) from 课程 a join 选修 b on a.课程号=b.课程号 group by a.课程 order by avg(b.成绩) desc5
select top 1 a.课程,平均成绩=avg(b.成绩) from 课程 a join 选修 b on a.课程号=b.课程号 group by a.课程 order by avg(b.成绩) desc6
grant all on 系与成绩 to public
from 选修,学生
where 学生.学号 in (select 学号 from 学生 where 所在系='计算机系' and 学号 in (select distinct 学号 from 选修)) and 学生.学号=选修.学号select 所在系,sum(分数)/count(*) as 平均分 from 学生,选修 where 学生.学号=选修.学号 group by 所在系