You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Suppose that a website contains two tables, the Customers table and the Orders table. Write a SQL query to find all customers who never order anything.
Table: Customers.
+----+-------+
| Id | Name |
+----+-------+
| 1 | Joe |
| 2 | Henry |
| 3 | Sam |
| 4 | Max |
+----+-------+
Suppose that a website contains two tables, the
Customers
table and theOrders
table. Write a SQL query to find all customers who never order anything.Table:
Customers
.Table:
Orders
.Using the above tables as example, return the following:
这道题让我们给了我们一个Customers表和一个Orders表,让我们找到从来没有下单的顾客,那么我们最直接的方法就是找没有在Orders表中出现的顾客Id就行了,用Not in关键字,如下所示:
解法一:
或者我们也可以用左交来联合两个表,只要找出右边的CustomerId为Null的顾客就是木有下单的:
解法二:
我们还可以用Not exists关键字来做,原理和Not in很像,参见代码如下:
解法三:
参考资料:
https://leetcode.com/discuss/22624/three-accepted-solutions
https://leetcode.com/discuss/53213/a-solution-using-not-in-and-another-one-using-left-join
LeetCode All in One 题目讲解汇总(持续更新中...)
The text was updated successfully, but these errors were encountered: