【LeetCode】183、Customers Who Never Order
来源:互联网 发布:普通话测试模拟软件 编辑:程序博客网 时间:2024/06/06 07:38
题目要求:Supposethat a website contains two tables, the Customers table and the Orders table.Write a SQL query to find all customers who never order anything.
解答:1)LEFT JOIN 左联结:
SELECT NameAS Customers
FROM Customers LEFT JOIN Orders
ON Customers.Id = Orders.CustomerId
WHERE Orders.Id IS NULL
2) 组合查询,使用 NOT IN:
SELECT Name AS Customers
FROM Customers WHERE Id NOT IN
(SELECT CustomerId FROM Orders)
3) 而EXISTS 与 IN最大的区别在于 IN 引导的子句只能返回一个字段,比如:
select name from student where sex = 'm' and mark in (select 1,2,3from grade where ...)
in子句返回了三个字段,这是不正确的,exists子句是允许的,但in只允许有一个字段返回,在1,2,3中随便去了两个字段即可。
解法:
SELECT Name AS Customers
FROM Customers WHERE NOT EXISTS
(SELECT * FROM Orders
WHERE Orders.CustomerId = Customers.Id)
- 【LeetCode】183、Customers Who Never Order
- LeetCode | Customers Who Never Order
- Leetcode : Customers Who Never Order
- LeetCode Customers Who Never Order
- Leetcode Customers Who Never Order
- Leetcode: Customers Who Never Order
- 【Leetcode】Customers Who Never Order
- 【leetcode SQL】Customers Who Never Order
- [LeetCode][Database]Customers Who Never Order
- 【Leetcode】 database Customers Who Never Order
- [Leetcode] [Database] Customers Who Never Order解题
- Database Leetcode Customers Who Never Order
- LEETCODE database 183. Customers Who Never Order
- leetcode 183. Customers Who Never Order
- leetcode.183. Customers Who Never Order
- 【leetcode Database】183. Customers Who Never Order
- leetcode 183. Customers Who Never Order
- Leetcode 183. Customers Who Never Order
- 晨间日记模板
- Mybatis基于接口代理的方式来开发Dao(一)
- 菱形的编译
- Java 对象序列化
- 1018: [SHOI2008]堵塞的交通traffic
- 【LeetCode】183、Customers Who Never Order
- Oracle数据库基本语句练习
- [莫比乌斯反演] BZOJ1101: [POI2007]Zap
- Axure RP 8管理团队项目中遇到的问题
- HDU 1242-Rescue
- php培训学习记录 第三天(开始记录)
- web常见错误
- 三维空间透视投影至二维平面
- hdu 1069(dp)