Sql 如何将此代码中的NOT替换为NOT EXISTS?

Sql 如何将此代码中的NOT替换为NOT EXISTS?,sql,oracle,oracle11g,not-exists,notin,Sql,Oracle,Oracle11g,Not Exists,Notin,我只尝试用以下代码中的NOT EXISTS替换NOT IN运算符。 然而,它给了我一个“无效的关系运算符错误” 如何更正此错误?我错过了什么重要的事情吗?请帮忙 SELECT DISTINCT 'v1', 'v2', f.apples, f.bananas, f.oranges FROM fruits f WHERE f.co

我只尝试用以下代码中的NOT EXISTS替换NOT IN运算符。 然而,它给了我一个“无效的关系运算符错误”

如何更正此错误?我错过了什么重要的事情吗?请帮忙

SELECT DISTINCT 'v1',
                   'v2',
                   f.apples,
                   f.bananas,
                   f.oranges     
FROM fruits f
     WHERE f.code = 'F1' 
     AND f.buyer_fruit_code
     NOT EXISTS
             (SELECT c.color_code
                FROM colors c);
请尝试以下方法:

SELECT DISTINCT 'v1',
                       'v2',
                       f.apples,
                       f.bananas,
                       f.oranges     
    FROM fruits f
    LEFT JOIN color_code c ON f.fruit_code=c.color_code
         WHERE f.code = 'F1' 
         AND c.color_code is NULL

NOT IN
运算符表示与
NOT EXISTS
子句不同的内容。其中,
不存在
不是运算符。也许你想要这样的东西:

SELECT DISTINCT 'v1',
               'v2',
               f.apples,
               f.bananas,
               f.oranges     
FROM fruits f
WHERE
  f.code = 'F1' 
  AND NOT EXISTS (
    SELECT c.color_code
    FROM colors c
    WHERE c.color_code = f.buyer_fruit_code
  )
;

谢谢,我很想尝试一下,但我特别希望在这里用“不存在”替换“不存在”。