SQL语句查找tbl1的唯一记录,而tbl2中也没有相同的记录

时间:2019-07-06 21:36:39

标签: sql

我正在尝试在'c'中列出记录,而这些记录也不是'o'的一部分,但是基于客户编号,我的代码无法正常工作。

select c.* 
from c 
where c.customerNumber not in (select o.customerNumber
                               from orders o 
                               inner join customers c on c.customerNumber = o.customerNumber);

我在做什么错了?

1 个答案:

答案 0 :(得分:1)

您可以在不存在的情况下做到这一点:

select c.* from c 
where not exists (
  select 1 
  from orders 
  where customerNumber = c.customerNumber
);

或简化您的代码:

select  c.* from c 
where c.customerNumber not in (
  select  customerNumber
  from orders
);