写在前面
-
原文地址:#### 183. 从不订购的客户
-
难度:简单
题目
某网站包含两个表,Customers 表和 Orders 表。编写一个 SQL 查询,找出所有从不订购任何东西的客户。
Customers 表:



思路1
既然所谓的订购是指在在orders中出现过的,那没出现的就是没订购过的。
select name as Customers
from Customers
where id not in (select distinct customerid from orders)
这个思路基本能想到。那还要其他思路吗?
思路2
还可以用表连接的做法来实现, 客户表和订单表,不是所有客户都下了订单,那么客户会多显示,应该用左连接。 而没下过订单的客户,应该是显示id为空的。
select name as Customers
from Customers c left join orders o on c.id = o.customerid
where o.id is null