• mysql内连接与外连接详解


    数据库中,连接操作是一种把两个或者多个表的记录组合在一起的操作,常用的有内连接(Inner Join)、外连接(Outer Join)等。

    内连接

    • 内连接(Inner Join):内连接是最常用的连接操作,它只返回两个表中满足连接条件的记录。在Java中,可以使用SQL语句中的INNER JOIN关键字实现内连接。例如,假设我们有两个表A和B,我们可以通过以下SQL语句实现内连接:
    SELECT * FROM A INNER JOIN B ON A.id = B.id;
    
    • 1

    在这里插入图片描述

    外连接

    MySQL中的外连接(Outer Join)它返回两个表中满足连接条件的记录,以及不满足条件的记录。外连接可以进一步分为左外连接(Left Outer Join)、右外连接(Right Outer Join)和全外连接(Full Outer Join)。

    1. 左外连接(Left Outer Join):左外连接返回左表中的所有记录,以及与左表中的记录匹配的右表中的记录。如果右表中没有与左表中的某个记录匹配的记录,那么对应的右表中的字段将被填充为NULL

    在这里插入图片描述

    1. 右外连接(Right Outer Join):右外连接返回右表中的所有记录,以及与右表中的记录匹配的左表中的记录。如果左表中没有与右表中的某个记录匹配的记录,那么对应的左表中的字段将被填充为NULL

    2. 在这里插入图片描述

    3. 全外连接(Full Outer Join):全外连接返回两个表中的所有记录,并匹配两个表中的记录。如果某个表中的记录在另一个表中没有匹配的记录,那么对应的字段将被填充为NULL

    在这里插入图片描述

    在MySQL中,使用LEFT JOINRIGHT JOINFULL JOIN关键字来实现左外连接、右外连接和全外连接。具体语法如下:

    SELECT 列名
    FROM 左表
    LEFT JOIN 右表 ON 连接条件;
    
    SELECT 列名
    FROM 左表
    RIGHT JOIN 右表 ON 连接条件;
    
    SELECT 列名
    FROM 左表
    FULL JOIN 右表 ON 连接条件;
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11

    其中,列名是要选择的列的名称,可以是左表或右表中的列,或者两者都选择;左表右表是要连接的两个表,通常使用它们的表名或别名;连接条件是指定连接的条件,它指定了左表和右表之间的关联。连接条件通常是比较两个表中的列值是否相等。

  • 相关阅读:
    golang学习笔记系列之一些标准库的学习(log,bytes,errors等)
    右值引用,移动语义,完美转发
    R语言编写代码示例
    【现代信号处理第六次作业】
    Spring Bean循环依赖学习与探究
    重生之我是一名程序员 31
    因果推断三种分析框架
    虚拟网络编辑器三种模式工作原理详细介绍(桥接-网络地址转换-主机模式)
    基于JavaSpringBoot+Vue+uniapp微信小程序实现鲜花商城购物系统
    【Ubuntu】实现windows和ubuntu之间的共享文件
  • 原文地址:https://blog.csdn.net/drhnb/article/details/132924593