一个sql经典的题目,关于相关子查询
s
s# sname age sex
1 李强 23 男
2 刘丽 22 女
5 张友 22 男
c
c# cname teacher
k1 c语言 王华
k5 数据库 程军
k8 编译原理 程军
sc
s# c# grade
1 k1 83
2 k1 85
5 k1 92
2 k5 90
5 k5 84
5 k8 80
根据以上三个表求出:选修课程包含学号为2的学生所修课程的学生学号(s#)。
答案:
select s#
from sc sc1
where not exists
(select c#
from sc sc2
where s#=2 and not exists
(select *
from sc
where s#=sc1.s# and c#=sc2.c#)
)
请问:谁知道执行的结果应该是什么?(注意:没有distinct关键字)
关键是要详细说明处理过程。