SQL语句Left join 中On和Where的用法区别-阿里云开发者社区

开发者社区> 衣舞晨风> 正文

SQL语句Left join 中On和Where的用法区别

简介: 原文地址:点击打开链接 SQL语句如下: SELECT *  FROM 表1   LEFT JOIN 表2 ON 表1.id = 表2.id AND 表2.Name != 'ff' WHERE 表1.NAME != 'aa'         步骤1:返回笛卡尔积(SELECT * FROM 表1 CROSS JOIN 表2)   步骤2:应用ON筛选器(当前的条件为
+关注继续查看

原文地址:点击打开链接

SQL语句如下:

SELECT * 
FROM 表1  
LEFT JOIN 表2 ON 表1.id = 表2.id AND 表2.Name != 'ff'
WHERE 表1.NAME != 'aa' 

       步骤1:返回笛卡尔积(SELECT * FROM 表1 CROSS JOIN 表2)

  步骤2:应用ON筛选器(当前的条件为  表1.id = 表2.id AND 表2.Name != 'ff')

  步骤3:添加外部行

  这一步只对OUTER JOIN起作用,如果是LEFT JOIN会以左边的表为保留表,如果是RIGHT JOIN会以右边的表为保留表。所谓外部行是指,保留表中的行。即使第二步的ON过滤掉了一些行,在这一步,会根据保留表添加第二步过滤掉的行。当前的例子,不存在这种情况。

  步骤4:应用WHERE筛选器(当前是Name != ‘aa’)过滤前三步所生成虚拟表的数据。

总结:

        如果SQL用的是Left Join ,On后面的条件对Left的表没有作用,只对Right的表有过滤作用,Where语句可以对Left的表有过滤作用。

        如果SQL用的是Right Join ,On后面的条件对Right的表没有作用,只对Left的表有过滤作用,Where语句可以对Right的表有过滤作用。



版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

相关文章
java建造者模式
在现实生活中如果我们需要制造一个比较复杂的东西,比如手机,台式电脑,或者汽车等。如果我们要制造一台电脑的话我们会先将电脑所需的各个部件买回来然后在组装起来成为一台电脑。这里电脑所需的各个组件比如显示器,CPU,硬盘等等都是由不同的厂商生产的,然后被我们不同的组合而成了不同的产品。这是现实生活中和建造者模式类似的场景,而在程序中也一样有些情况下我们需要创建比较复杂的对象,在这种场景下我们可以通过建造者模式来实现,
4 0
作为程序员的他,大学四年一直自学,全靠这些实用工具和学习网站!
作为程序员的他,大学四年一直自学,全靠这些实用工具和学习网站!
4 0
sqlMap.xml出现error
sqlMap.xml出现error
4 0
细说一下RedisTemplate的使用方法(二)
执行自定义SQL方法时,调用的就是execute方法。execute方法是一个很宽泛的方法,其他专注特定的Redis数据类型封装的方法都是基于此方法。这就说明了其他方法能实现的,execute方法也能实现。
5 0
Redis应用之缓存实现
Redis的众多应用场景中缓存绝对是频率最高的场景了。本文来介绍下Redis作为缓存要注意的地方。
4 0
当推荐遇到社交:美图的推荐算法设计优化实践
本文是美图高级算法专家汤斌的一篇文章,重点介绍了社交网络背景下推荐算法面临的挑战,以及应对的方法。
5 0
Spring中使用的设计模式
Spring框架是每个java程序猿入门级的框架也是最重要的框架,而Spring中也采用了很多的设计模式,这些也会成为我们面试过程中经常会问到的问题,所以本文就整理出Spring中具体使用的哪些设计模式。
4 0
详细分析MyBatis框架中exists的基本使用
本篇文章中主要介绍了MyBatis框架中exists的基本用法。在介绍exists的用法的同时,也介绍了not exists的基本使用,说明了exists和in在使用过程中的区别。使用一个具体示例对MyBatis框架中使用exists进行具体详细的说明。最后对SQL中的in,not in,exists,not exists之间的区别进行总结说明。
4 0
Oracle最新的Sql笔试题及答案
Oracle最新的Sql笔试题及答案
6 0
哪些 Java 知识不需要再学了
哪些 Java 知识不需要再学了
3 0
+关注
衣舞晨风
http://blog.csdn.net/jiankunking
701
文章
0
问答
文章排行榜
最热
最新
相关电子书
更多
文娱运维技术
立即下载
《SaaS模式云原生数据仓库应用场景实践》
立即下载
《看见新力量:二》电子书
立即下载