关于Sql嵌套查询与连接查询的转换
前几天,同事遇到一个问题——如何将嵌套查询改成连接查询。自己考虑之后,记录一下自己的想法。
问题:两个表
表一
字段:CustomerID, CustomerName,Address
表二
字段:ContractID,CustomerID,ContractName
要求:查出没有签订合同的客户信息。
嵌套查询:select* from 表一 where customerID not in(select distinct CustomerID from 表二).
连接查询:select * from 表一 a left join 表二 b on a.customerid=b.customerid where contractid=null.
自我思考:
【关于Sql嵌套查询与连接查询的转换】众所周知,连接查询的效率要比嵌套查询高,所以很多时候我们都会选择连接查询。将嵌套查询转化成连接查询的关键就是合理使用Null。
推荐阅读
- 关于QueryWrapper|关于QueryWrapper,实现MybatisPlus多表关联查询方式
- mybatisplus|mybatisplus where QueryWrapper加括号嵌套查询方式
- 四首关于旅行记忆的外文歌曲
- 醒不来的梦
- 关于自我为中心的一点感想
- 「按键精灵安卓版」关于全分辨率脚本的一些理解(非游戏app)
- 关于Ruby的杂想
- 关于读书的思考
- 关于this的一些问题(1)
- 《声之形》