首页 >数据库 >mysql教程 >如何使用 SQL 的 LEFT OUTER JOIN 合并两个表中的数据?

如何使用 SQL 的 LEFT OUTER JOIN 合并两个表中的数据?

Patricia Arquette
Patricia Arquette原创
2025-01-04 21:37:40932浏览

How to Combine Data from Two Tables Using SQL's LEFT OUTER JOIN?

SQL:连接两个表

在数据分析中,经常需要组合多个表的数据。此类操作之一是连接两个表。在此示例中,我们考虑两个表 A 和 B,它们具有以下数据:

TABLE A

uid  name
1    test1
2    test2
3    test3
4    test4

TABLE B

uid  address
1    address1
2    address2
4    address3

查询以获取组合结果

目标是获得一个结果表,该结果表根据公共列组合了表 A 和表 B 中的相应行:

RESULT

uid  name  address
1    test1  address1
2    test2  address2
3    test3  NULL
4    test4  address3

在 SQL 中,这可以使用 LEFT OUTER JOIN 来实现。这是查询:

SELECT A.uid, A.name, B.address
FROM A LEFT JOIN B ON A.uid=B.uid;

解释:

  • LEFT JOIN 运算符允许我们将表 A 中的行与表 B 中的匹配行组合起来。
  • 当A表中的某行在B表中没有找到匹配的行时,结果中对应的列将设置为 NULL。
  • 查询首先从两个表中选择感兴趣的列。
  • JOIN 子句指定应根据 A 和 B 中 uid 列的相等性来组合行。
  • LEFT OUTER JOIN 确保表 A 中的所有行都包含在结果中,无论它们在表中是否有匹配的行B.

其他资源:

  • SQL 连接的可视化表示:https://www.codeproject.com/KB/database/Visual_SQL_Joins /Visual_SQL_JOINS_V2.png
  • JOIN 和 JOIN 之间的区别MySQL 中的外连接:https://www.db-fiddle.com/f/g3nkjkd1y3iusvvqfe2843kg19

以上是如何使用 SQL 的 LEFT OUTER JOIN 合并两个表中的数据?的详细内容。更多信息请关注PHP中文网其他相关文章!

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn