回 帖 发 新 帖 刷新版面

主题:sql嵌套语句的问题

select 名称 as 供应商名称 from 供应商表
where not exists 
(select * from 零件表
where not exists 
(select * from 供应表
where  供应商编号=供应商表.供应商编号 and 零件编号=零件表.零件编号))

是不是先执行
select * from 零件表
where not exists 
(select * from 供应表
where 零件编号=零件表.零件编号)
得到的结果为空

后执行
select 名称 as 供应商名称 from 供应商表
where not exists ......


可整个语句却能得到准确的结果


这语句到底是怎么执行的啊

回复列表 (共3个回复)

沙发

你的这个复杂的SQL语句,执行内容为:查找从来没有供应任何一个零件的供应商,将这些供应商列出来。

板凳

结果是查找提供所有零件的供货商的名称

那你是怎么看出来的呢?

3 楼

应该是是从后往前的顺序

我来回复

您尚未登录,请登录后再回复。点此登录或注册