左外连接、右外连接和全外连接之间的区别

mysqldatabasedata storage

在本文中,我们将了解左外连接、右外连接和全外连接之间的区别。

左外连接

它从左侧的表中获取所有行。

它与"内连接 + 左侧表中所有不匹配的行"相同。

右侧表中不匹配的数据将丢失。

示例:

SELECT [column_1, column_2, ….]
FROM table_1
LEFT OUTER JOIN table_2 ON
table_1.matching_column = table_2.matching_column

右外连接

它获取右侧表的所有行。

它类似于执行"内连接 + 右侧表的所有不匹配的行"。

左侧表中不匹配的数据将丢失。

示例:

SELECT [column_1, column_2, ….]
FROM table_1
RIGHT OUTER JOIN table_2 ON
table_1.matching_column = table_2.matching_column

完全外连接

它从两个表中提取所有行。

它类似于执行"内连接 + 左表的所有不匹配行 + 右表的所有不匹配行"。

此操作期间不会丢失任何数据。

示例:

SELECT [column_1, column_2, ….]
FROM table_1
FULL OUTER JOIN table_2 ON
table_1.matching_column = table_2.matching_column

相关文章