左外连接、右外连接和全外连接之间的区别
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