有一个学生数据库,有以下关系模式构成: 学生(学号,姓名,性别,年龄,所在系)

有一个学生数据库,有以下关系模式构成:
学生(学号,姓名,性别,年龄,所在系)
选修(学号,课程号,成绩)
课程(课程号,课程名,学分)
试用sql语言完成以下操作:
查询选修了3号课程的学生学号及其成绩,结果按分数降序排列。
查询各个课程号与相应的选课人数。
查询选修2号课程且成绩在90分以上的所有学生姓名。
4、插入学生记录:学号(012508),姓名(刘敏),性别(女),年龄(18),所在系(计算机)

1)
select a.学号,a.成绩 from 选修 a, 课程 b
where a.课程号=b.课程号 and b.课程名='3号' order by a.成绩 desc
-- 如果不是按课程名查,可以不用连接"课程"表
2)
select a.课程号, b.课程名, count(a.学好) from 选修 a, 课程 b
where a.课程号=b.课程号
group by a.课程号, b.课程名
3)
select b.姓名 from 选修 a, 学生 b
where a.学号=b.学号 and a.成绩 > 90
4)
insert into 学生(学号,姓名,性别,年龄,所在系) values ('012508','刘敏','女',18,'计算机')
温馨提示:答案为网友推荐,仅供参考
第1个回答  2012-12-16
1.select 学生.学号,成绩
from 学生,选修,课程
where 课程名="3号课程" and 学生.学号=选修.学号 and 选修.课程号=课程.课程号
order by 成绩
2.select 课程号,count(学号) as 人数
from 选修
group by 课程号
3.select 姓名
from 学生,选修,课程
where 学生.学号=选修.学号 and 选修.课程号=课程.课程号 and 课程名="2号课程" and 学分>=90
4.insert into 学生 values ('012508','刘敏','女','18','计算机')