1. 程式人生 > >mysql 練習

mysql 練習

-- 查詢 lec 例如 where join code sam 編寫

1 從不訂購的客戶

某網站包含兩個表,Customers 表和 Orders 表。編寫一個 SQL 查詢,找出所有從不訂購任何東西的客戶。

Customers 表:

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

Orders 表:

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

例如給定上述表格,你的查詢應返回:

+-----------+
| Customers |
+-----------+
| Henry     |
| Max       |
+-----------+
解答① 聯接
select c.name as customers from customers c left join orders o on c.id = o.customerid where customerid is null
解答② not in
select c.name as customers from customers c where c.id not in (select customerid from orders)

mysql 練習