我是靠谱客的博主 腼腆溪流,最近开发中收集的这篇文章主要介绍inner join on会过滤掉两边空值的条件,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

前两天工作过程中,遇到一个问题,关于join on查询的,对于查出来的结果一直都很疑惑,这里记录一下。
1.首先看下面这条sql查询语句:


查询出来的结果是25053

2.加个 o.lat = n.lat 的条件:


查询出来的结果是15586

3.现在我们将条件改成 o.lat != n.lat,查出来的结果是不是应该显示 25053-15586的差值呢?

我们发现结果并不是预想的那样,而是125。奇怪,剩下的25053-15586-125 = 9342条数据哪里去了呢,怎么查询不出来?

4.再看下面这条sql语句,我们过滤掉 o.lat和n.lat 都是空的情况:


9342!!
啊哈,原来如此,join on 会过滤掉两边都是空值的条件。
如果返回左表中为null的数据,可以使用left join,相反,如果返回右表中null的数据,使用right join。
inner join(可以简写成join),将不会返回左右表中均为null的数据。

最后

以上就是腼腆溪流为你收集整理的inner join on会过滤掉两边空值的条件的全部内容,希望文章能够帮你解决inner join on会过滤掉两边空值的条件所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(45)

评论列表共有 0 条评论

立即
投稿
返回
顶部