0

我想在下面的查询中使用 NOT EXIST 而不是 NOT IN。

Select * From Currencymaster Where Currencycode Not In ('USD');

我试着这样写:

Select currencycode from currencymaster where not exists (select currencycode from currencymaster where currencycode='USD');

我不确定这是否正确。因为它没有给我任何结果。

请验证或指导我重写它。谢谢

4

1 回答 1

3
Select currencycode  
  from currencymaster a
 where not exists (select currencycode 
                     from currencymaster b 
                    where b.currencycode='USD' 
                      and a.currencycode=b.currencycode);

select currencycode from currencymaster where currencycode='USD'将始终在您的条件下返回行,因为它总是在其中找到一行currencycode='USD。要使其工作,您必须添加另一个并条件检查主表 ROW 即 A 的货币 ='USD'。

如果你只检查货币比你可以尝试这样..

 Select currencycode  
      from currencymaster WHERE currencycode!='USD'
于 2013-07-19T06:04:24.033 回答