子查询笔记(数据库原理及应用)
查询所有“软件技术”专业的学生学号、姓名和班级。
select xuehao,xingming,banhao from xuesheng where banhao in(select banhao from banji where zhuanye = '软件技术');
uploading-image-503942.png
查询么偶有被学生选修过课程的课程号和课名
分析: 首先查询选课表中出现的课号,即是学生选过课程的课号,那么只要在没有在选课表中出现的课号所代表的课程即是没有选修过的课程
select kehao,keming
from kecheng where kehao not in(
select kehao from xuanke);
查询选修了企业文化的学生的学号,姓名和班级
分析: 首先在班级中查到企业文化,知道其课号是多少,然后在选课表中根据其课号,查到课号是企业文化所代表数据元素的集合,当然这个对象中的数据结构是学号。然后在学生表中查找只要是在这个集合中出现的学号即是选修了企业文化的学生
select xuehao,xingming,banhao
from xuesheng
where xuehao in(
select xuehao from xuanke where kehao=
(select kehao from kecheng where keming = '企业文化'));