在本教程中,我们将学习如何使用SQL外部连接OUTER JOIN,包括左外部连接、右外部连接和完全外部连接。
OUTER JOIN
SQL左外连接也称为SQL左连接。假设我们要连接两个表:A和B。SQL 左连接将返回左表(A)中的所有行和右表(B)中的所有匹配行。这意味着SQL左连接的结果总是包含左表中的行。
下面演示了连接两个表table_A和table_B的SQL左外连接语法:
SELECT
column1, column2...
FROM
table_A
LEFT
JOIN
table_B
ON
join_condition
WHERE
row_condition
以下查询选择所有客户及其订单:
c.customerid,
c.companyName,
orderid
customers c
orders_test o
o.customerid = c.customerid
ORDER
BY
列出了客户表中的所有行。如果在orders表中没有为客户表中的行找到匹配的行,则orders表中的orderid列将使用空值填充。
SQL右外部连接也称为SQL右连接。SQL 右外部联接将返回右表中的所有行和左表中找到的所有匹配行。
SQL右外部联接的语法如下:
RIGHT
下面的示例演示SQL右外部联接:
查询返回orders表中的所有行和customers表中找到的所有匹配行。
SQL完全外部联接的语法如下:
FULL
OUTER
SQL完全外部连接将返回:
一些数据库管理系统不支持SQL完全外部连接语法,例如MySQL。因为SQL完全外部连接返回的结果集是左连接和右连接的组合结果。因此,可以使用左连接和右连接以及UNION运算符轻松模拟SQL完全外部连接,如下所示:
UNION
orders o
原文链接:https://codingdict.com/