数据库中子查询存在条件exists

问题遇到的现象和发生背景

这个小题使用的是exists然后我想换成in的形式

img

img


这是我查到的别人写的in的形式,然后我想的是写一个select一个子查询然后里面的职工号我用or连接起来,照我这样写的话可以吗

遇到的现象和发生背景,请写出第一个错误信息

还有这个小题,后面为什么又加了一个not exists

img

用代码块功能插入代码,请勿粘贴截图。 不用代码块回答率下降 50%
运行结果及详细报错内容
我的解答思路和尝试过的方法,不写自己思路的,回答率下降 60%
我想要达到的结果,如果你需要快速回答,请尝试 “付费悬赏”

你的意思是这样写对吧

SELECT * FROM 供应商 WHERE 地址='北京' AND 供应商号 IN
(SELECT 供应商号 FROM 订购单 WHERE 职工号='E1' or 职工号 ='E3');

这样写当然可以,你好可以这样写

SELECT * FROM 供应商 WHERE 地址='北京' AND 供应商号 IN
(SELECT 供应商号 FROM 订购单 WHERE 职工号 IN ('E1','E3'));

下面这个题写的很乱,这些答案都不是唯一的,只要能实现功能就行,像这样的可读性很差的sql,就别浪费时间了,按照你自己的逻辑写,执行验证一下