回 帖 发 新 帖 刷新版面

主题:求助

本人刚刚学习SQL遇到一点问题,现有如下几个基本表


班级表Class(班级号CNo,所在院系Department,所属专业Speciality,班长学号Monitor)
学生表Student(学号SNo,姓名SName,性别Gender,所在班级号CNo)
课程表Lesson(课程号LNo,课程名LName,教材名Book,学分数CreditHour)
学生成绩表Grade(学生学号SNo,课程号LNo,分数Score)
班级选课表Election(班级号CNo,课程号LNo,教师编号Tid,上课年度Year,上课学期Semester)
教师表Teacher(教师编号Tid,姓名TName,所在院系Department)


问题1:计算2005年度讲授过两门或两门以上课程的教师编号和所教授的课程号,
问题2:创建一个视图V1,给出所有“计算机系”学生的学号,姓名,性别,所在班级编号和“数据库系统”课程的分数。

请大家帮帮忙。

回复列表 (共1个回复)

沙发

1)
select a.Tid,LNo
from(select Tid,LNo from Election where [Year]='2005' group by LNo,Tid having count(LNo)>=2) a,Teacher b
where a.Tid=b.Tid

2)

create view v
as
select b.*,Score
from Class a,Student b,Lesson c,Grade d
where a.CNo=b.CNo and b.SNo=d.SNo and c.LNo=d.LNo and a.Speciality='计算机系' and c.LName='数据库系统'

我来回复

您尚未登录,请登录后再回复。点此登录或注册