在学习使用存在量词的嵌套查询时对其查询步骤实现不太理解,在查找资料后总结为以下步骤(方便之后学习,如有错误麻烦大家帮忙指出):
①在外层从第一个元组(第一条记录)开始查询
②当前记录符合where中内层的条件则计入结果中
③再取下一条记录重复②直至所有记录查询完成
④根据外层select对结果表内的数据进行输出
如课本查询学c2课程的学生学号及姓名:
select s#,sname
from s
where exists(select *
from sc
where s.s#=sc.s# and c#='c2');
s表
s# | sname | age | sex |
s1 | pjj | 21 | 男 |
s2 | cx | 23 | 女 |
sc表
s# | c# | score |
s1 | c1 | 100 |
s2 | c2 | 100 |
对上述两表用存在量词的嵌套查询查询学习c2的学生姓名时,按照上