首页 > 数据库 >mysql 连接-左外连接-left join

mysql 连接-左外连接-left join

时间:2022-10-09 11:24:31浏览次数:61  
标签:join 左外 条件 where 连接 left

外连接

左外连接,关键字:

table1 LEFT OUTER JOIN table2 on 条件 where 条件
左外连接结果 = 内连接 + 左边表中失配的元组
结果包括左表中的所有数据行,和右表中符合连接条件的行,不符合条件的空用NULL。

外连接 on 和where区别

数据库在通过连接两张或多张表来返回记录时,都会生成一张中间的临时表,然后再将这张临时表返回给用户。

 在使用left join时,on和where条件的区别如下:

1、 on条件是在生成临时表时使用的条件,它不管on中的条件是否为真,都会返回左边表中的记录。

2、where条件是在临时表生成好后,再对临时表进行过滤的条件。这时已经没有left join的含义(必须返回左边表的记录)了,条件不为真的就全部过滤掉。

所以使用外连接,table1.a=table2.a这种条件一般放于on中,一些针对某一个表的条件放于where中

标签:join,左外,条件,where,连接,left
From: https://www.cnblogs.com/hzk20220818/p/16771458.html

相关文章

  • mysql 连接-自连接
    自连接表连接自己,通过某个条件Id|Name|Salary|ManagerId----+-------+--------+-----------1|Joe|70000|32|Henry|80000|4......
  • SeaTunnel连接器V1到V2的架构演进与探究
    核心概念整个SeaTunnel设计的核心是利用设计模式中的控制翻转或者叫依赖注入,主要概括为以下两点:上层不依赖底层,两者都依赖抽象流程代码与业务逻辑应该分离对于整个数......
  • VMWare 中的虚拟机连接外网
    一、环境准备使用NAT连接网络网段为:192.168.10.0 子网掩码为:255.255.255.0默认网关为:192.168.10.2宿主机连接的IP为:192.168.10.1虚拟机上的DNS为:192.168.10.21.修......
  • Python join()
    当你要等到线程结束时候,才需要调用join()join()也可以等待那些,设置了daemon的线程。创建线程的3个方法1,threading.Thread(fun,args)2,创建一个由​​​__call__​......
  • Thread的join方法demo
    Thread的join方法demo/***关于join官方的解释是Waitsforthisthreadtodie.也就是等待一个线程结束。*/publicclassThreadJoinTest{publicstaticvo......
  • SD-WAN 如何影响云服务和连接
    随着对云服务的依赖不断增长,企业越来越多地转向SD-WAN环境。SD-WAN提供了明显的业务优势,包括更简单的云集成和连接以及增强的应用程序性能。SD-WAN环境提供的云连接还允......
  • OpenRB BT-410连接问题
    我想在openRB上连接使用BT410将BT410连接到OpenRB中的每个TX、RX、GND、VCC,编写了程序,但不能按自己的意愿运行 如果读取任何数据,就会打开LED。我试过了,但LED没有打开......
  • 硬盘连接方式介绍
    硬盘连接方式:硬盘与主板之间有以下三种常见的连接方式 1、硬盘直连主板,连接示意图如下:(补实物图) 特点:(1)该连接方法仅适用于SATA接口的硬盘,SAS接口的硬盘不能直接与主......
  • 【GEE笔记6】数据连接Join
    连接​​ee.Join​​​用于根据​​ee.Filter​​​指定的条件组合来自不同集合(例如ImageCollection或FeatureCollection)的元素。过滤器由每个集合中相互关联的属性的......
  • tdengine 连接报错: invalid Vgroup ID
       原因:host文件中,有两个配置重名了,需要注释掉一个 ......