MySQL外连接

MySQL外连接是一种在两个或多个表之间进行联接操作的方法。它返回符合联接条件的所有行,同时也返回未匹配的行。

MySQL支持左外连接、右外连接和全外连接。

左外连接(LEFT JOIN)是指从左表中返回所有记录,无论是否在右表中有匹配记录。如果右表中没有匹配记录,则返回空值。

右外连接(RIGHT JOIN)是指从右表中返回所有记录,无论是否在左表中有匹配记录。如果左表中没有匹配记录,则返回空值。

全外连接(FULL JOIN)是指从左表和右表中返回所有记录,无论是否在对方表中有匹配记录。如果两个表中都没有匹配记录,则返回空值。

下面是一个简单的例子:

表1:Customers CustomerID CustomerName 1 John 2 Mary 3 Peter

表2:Orders OrderID CustomerID OrderDate 1 1 2020-01-01 2 2 2020-02-01 3 4 2020-03-01

使用左外连接查询两个表的所有记录:

SELECT Customers.CustomerName, Orders.OrderDate FROM Customers LEFT JOIN Orders ON Customers.CustomerID = Orders.CustomerID;

查询结果:

CustomerName OrderDate John 2020-01-01 Mary 2020-02-01 Peter NULL

注意,在MySQL中,LEFT JOIN和LEFT OUTER JOIN是等价的,RIGHT JOIN和RIGHT OUTER JOIN是等价的。

相关推荐
pe7er7 分钟前
MySQL 8 中大小写敏感与不敏感排序规则的选择
mysql
XDHCOM8 分钟前
Pandas怎么连接外部数据库导入数据,步骤和注意点简单讲讲
数据库·pandas
014-code9 分钟前
Spring 事务原理深度解析
java·数据库·spring·oracle
xixihaha132414 分钟前
实战:用OpenCV和Python进行人脸识别
jvm·数据库·python
云边有个稻草人17 分钟前
Oracle替换工程实践深度解析:金仓数据库的“去O”攻坚之路
数据库
泯仲22 分钟前
从零起步学习MySQL 第十三章:MySQL 事务详解:原理、特性、并发问题与隔离级别
数据库·学习·mysql
嚴寒22 分钟前
云服务核心组件:OSS 与 RDS 全面指南(2026版)
数据库·后端·架构
G探险者24 分钟前
DDD开发模式说明
java·运维·数据库
TDengine (老段)25 分钟前
TDengine IDMP 组态面板 —— 图元
大数据·数据库·人工智能·物联网·时序数据库·tdengine
马里马里奥-25 分钟前
文献阅读:LinkAlign:面向真实世界大规模多数据库文本转SQL任务的可扩展模式链接方法
数据库·sql