(LeetCode:数据库)从不订购的客户

某网站包含两个表,Customers 表和 Orders 表。编写一个 SQL 查询,找出所有从不订购任何东西的客户。

Customers

+----+-------+
| Id | Name  |
+----+-------+
| 1  | Joe   |
| 2  | Henry |
| 3  | Sam   |
| 4  | Max   |
+----+-------+

Orders

+----+------------+
| Id | CustomerId |
+----+------------+
| 1  | 3          |
| 2  | 1          |
+----+------------+

例如给定上述表格,你的查询应返回:

+-----------+
| Customers |
+-----------+
| Henry     |
| Max       |
+-----------+

Solution

SELECT
    c. NAME AS customers
FROM
    customers c
WHERE
    c.id NOT IN (
        SELECT
            a.id
        FROM
            customers a,
            orders b
        WHERE
            a.id = b.customerId
    );
    原文作者:lconcise
    原文地址: https://www.jianshu.com/p/80b6b7517a8d
    本文转自网络文章,转载此文章仅为分享知识,如有侵权,请联系博主进行删除。
点赞