mysql - 按 id 合并同一数据库中的表
问题描述
我有 1 个数据库,其中 3 个表包含有关同一主题的不同信息,如下所示:
表格1:
ID | name | address
-------------------------
1 | Jhon | somewhere
2 | James | somewhere-else
表2:
ID | last_name | status
-------------------------
1 | Doe | single
2 | Bond | married
我想将它们合并到一个新表中,如下所示:
新合并表:
ID | name | address | last_name | status
----------------------------------------------------
1 | Jhon | somewhere | Doe | single
2 | James | somewhere-else | Bond | married
解决方案
使用基本连接:
SELECT
t1.ID,
t1.name,
t1.address,
t2.last_name,
t2.status
FROM table1 t1
LEFT JOIN table2 t2
ON t1.ID = t2.ID;
严格来说,如果一个给定的ID
表可以出现在一个表中,但不能同时出现在两个表中,那么您可能希望使用完全外连接,以尽可能始终显示部分信息。如果这是您的情况,那么可以在此处给出评论和不同的查询。
推荐阅读
- excel - 将工作簿中具有相同列范围的工作表拆分为使用 VBA 代码分隔 Excel 文件
- arrays - 调用函数时出现不兼容的类型错误
- c - 显示本地时间和 UTC 时间
- java - 如何将数组初始化为空?
- elixir - 有没有更简单的方法来获取与函数匹配的列表中的第一个项目,并返回该项目以及没有该项目的列表?
- npm - NPM 错误:EPERM:不允许操作。压缩包数据
似乎被破坏了 - laravel - 如何在 Raspberry Pi 上托管 Laravel 项目
- python - 上传amazon s3 python,boto3后获取文件url
- ibm-cloud - IBM Cloud App ID:忘记密码和重新认证流程
- spring - Spring Boot 和 Spring Cloud 上的服务发现错误