我有一个customers表(包含customer ID和family name)和一个orders表,必须列出没有下订单的客户的ID和名称,即没有出现在orders表中。我试过这个:

SELECT custID,familyname
FROM customers
WHERE custID =
(SELECT custID
FROM orders
WHERE COUNT(custID)<1);

但我犯了个错误。我要用不存在吗?还是不在?

最佳答案

您不必使用not exists。你应该想:

SELECT c.custID, c.familyname
FROM customers
WHERE not exists (select 1 from orders o where o.custId = c.custId);

关于mysql - SQL-如何根据一个表中未显示的行列出它们?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/26205349/

10-11 07:57