数据库查询训练
查询至少选修了一门间接先行课为“5”号课程的学生姓名;
select sname
from course a,course b ,sc c ,student d
where a.cpno=b.cno and b.cpno='5'and a.cno=c.cno and c.sno =d.sno
分别使用左外连接、右外连接、全外连接查询student表和sc表中学生的姓名,课程号和成绩。
select sname,cno,grade
from student a left join sc b on a.sno=b.sno --左外连接
select sname,cno,grade
from student a right join sc b on a.sno=b.sno --右外连接
select sname,cno,grade
from student a full join sc b on a.sno=b.sno --全外连接
--左外连接列出左边关系中所有的元组,右外连接列出右边关系中所有的元组
--全外连接:列出左右关系中的所有元组,对于左关系中没有连接上的元组,其右关系中的相应属性用空值替代;
--对于有关系中没有连接上的元组,其左关系中的相应属性用控制替代