多表查询-4-外连接

多表查询-4-外连接

外连接

与内连接不同, 外连接是指使用 OUTER JOIN 关键字将两个表连接起来. 外连接生成的结果集不仅包含符合条件的行数据, 而且包括左表(左外连接时的表)、右表(右外连接时的表)或两边连接表(全外连接时的表)中所有的数据行

左外连接

左外连接(LEFT JOIN)是指将左表中所有的数据分别与右表中的每条数据进行连接组合, 返回的结果除内连接外, 还包括左表中不符合条件的数据, 并在右表的相应列中添加 NULL

相当于查询左表 的所有数据, 包含左表右表交集部分的数据

  1. 语法

    sql 复制代码
    SELECT 字段列表 FROM 表1 LEFT [OUTER] JOIN 表2 ON 条件 ...;
  2. 案例演示

    查询 employees 表的所有数据, 和对应的部门信息(左外连接)

    sql 复制代码
    select *
    from employees as e
            left join departments as d on e.dept_id = d.dept_id;

右外连接

右外连接(RIGHT JOIN)是指将右表中的所有数据分别与左表中的每条数据进行连接组合, 返回的结果除内连接的数据外, 还包括右表中不符合条件的数据, 并在左表的相应列中添加 NULL

相当于查询右表 的所有数据, 包含左表右表交集部分的数据

  1. 语法

    sql 复制代码
    SELECT 字段列表 FROM 表1 RIGHT [OUTER] JOIN 表2 ON 条件 ...;
  2. 案例演示

    查询 departments 表的所有数据, 和对应的员工信息(右外连接)

    sql 复制代码
    select *
    from employees as e
            right join departments as d on e.dept_id = d.dept_id;
相关推荐
惊讶的猫3 小时前
Redis持久化介绍
数据库·redis·缓存
Apple_羊先森3 小时前
ORACLE数据库巡检SQL脚本--19、磁盘读次数最高的前5条SQL语句
数据库·sql·oracle
全栈前端老曹3 小时前
【MongoDB】Node.js 集成 —— Mongoose ORM、Schema 设计、Model 操作
前端·javascript·数据库·mongodb·node.js·nosql·全栈
神梦流4 小时前
ops-math 算子库的扩展能力:高精度与复数运算的硬件映射策略
服务器·数据库
让学习成为一种生活方式4 小时前
trf v4.09.1 安装与使用--生信工具42-version2
数据库
啦啦啦_99994 小时前
Redis-5-doFormatAsync()方法
数据库·redis·c#
生产队队长4 小时前
Redis:Windows环境安装Redis,并将 Redis 进程注册为服务
数据库·redis·缓存
老邓计算机毕设4 小时前
SSM找学互助系统52568(程序+源码+数据库+调试部署+开发环境)带论文文档1万字以上,文末可获取,系统界面在最后面
数据库·ssm 框架·javaweb 毕业设计
痴儿哈哈4 小时前
自动化机器学习(AutoML)库TPOT使用指南
jvm·数据库·python
洛豳枭薰5 小时前
Innodb一次更新动作
mysql