Oracle中联合查询的实例使用

 使用班级信息表(ClassInfo)、学生信息表(StudInfo)、课程信息表(CourseInfo)、学生成绩信息表(StudScoreInfo)四表,建立连接查询,要求得到学号、姓名、性别、出生日期、班级编号、班级名称、课程编号、课程名称、成绩字段。(注:要求使用Where关 联表、InnerJoin联接、Using子句三种方法实现)
select  s1.studno 学号,
 s1.studname 姓名,
 s1.studsex 性别,
 s1.studbirthday 生日,
 c1.classid 班级编号,
 c1.classname 班级名称,
 c2.courseid 课程编号,
 c2.coursename 课程名称,
 s2.studscore 成绩
from studinfo s1,studscoreinfo s2,classinfo c1,courseinfo c2
where s1.studno=s2.studno and s1.classid=c1.classid and s2.courseid=c2.courseid

 

 

select  s1.studno 学号,
 s1.studname 姓名,
 s1.studsex 性别,
 s1.studbirthday 生日,
 c1.classid 班级编号,
 c1.classname 班级名称,
 c2.courseid 课程编号,
 c2.coursename 课程名称,
 s2.studscore 成绩
from  classinfo c1 inner join studinfo s1
 on c1.classid=s1.classid
 inner join studscoreinfo s2
 on s1.studno=s2.studno
 inner join courseinfo c2
 on s2.courseid=c2.courseid

 

 

 

select  studno 学号,
 s1.studname 姓名,
 s1.studsex 性别,
 s1.studbirthday 生日,
 classid 班级编号,
 c1.classname 班级名称,
 courseid 课程编号,
 c2.coursename 课程名称,
 s2.studscore 成绩
from  classinfo c1 join studinfo s1
 using (classid)
 join studscoreinfo s2
 using (studno)
 join courseinfo c2
 using (courseid)

你可能感兴趣的:(Oracle)