这个带双重NOT EXISTS 的SQL语句如何理解?

cchaha 2007-03-23 12:08:56
题目:
查询至少选修了学生95002选修的全部课程的学生号码。
查询语句如下:
select distinct sno
from sc scx
where not exists
( select *
from sc scy
where scy.sno='95002' and
not exists
( select *
from sc scz
where scz.sno=scx.sno and
scz.cno=scy.cno
)
);

我感觉它似乎像程序里面的多重循环一样,外循环一次到内循环时全部循环完成再到外循环加1然后再到内循环全部循环完,但具体是怎么一回事,还请各位CSDN的网友帮忙给最详细的解答,谢谢各位先了~~
...全文
839 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
zsl5305256 2007-03-26
  • 打赏
  • 举报
回复
这样速度不行啊,是多做循环了!
cchaha 2007-03-26
  • 打赏
  • 举报
回复
上去,请高手详解一下这个双重NOT EXISTS的SQL语句
marco08 2007-03-23
  • 打赏
  • 举报
回复
负负得正嘛
cchaha 2007-03-23
  • 打赏
  • 举报
回复
没有人会?

34,873

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server相关内容讨论专区
社区管理员
  • 基础类社区
  • 二月十六
  • 卖水果的net
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧