您的位置:首页 > 新闻 > 资讯 > 服务器空间租赁_大连网站开发公司shepiguo_产品推广文案100字_怎么做网站宣传

服务器空间租赁_大连网站开发公司shepiguo_产品推广文案100字_怎么做网站宣传

2025/6/6 20:30:49 来源:https://blog.csdn.net/MrZhangBaby/article/details/144688799  浏览:    关键词:服务器空间租赁_大连网站开发公司shepiguo_产品推广文案100字_怎么做网站宣传
服务器空间租赁_大连网站开发公司shepiguo_产品推广文案100字_怎么做网站宣传

175. 组合两个表

表: Person
±------------±--------+
| 列名 | 类型 |
±------------±--------+
| PersonId | int |
| FirstName | varchar |
| LastName | varchar |
±------------±--------+
personId 是该表的主键(具有唯一值的列)。
该表包含一些人的 ID 和他们的姓和名的信息。

表: Address
±------------±--------+
| 列名 | 类型 |
±------------±--------+
| AddressId | int |
| PersonId | int |
| City | varchar |
| State | varchar |
±------------±--------+
addressId 是该表的主键(具有唯一值的列)。
该表的每一行都包含一个 ID = PersonId 的人的城市和州的信息。

编写解决方案,报告 Person 表中每个人的姓、名、城市和州。如果 personId 的地址不在 Address 表中,则报告为 null 。

以 任意顺序 返回结果表。

结果格式如下所示。

示例 1:
输入:
Person表:
±---------±---------±----------+
| personId | lastName | firstName |
±---------±---------±----------+
| 1 | Wang | Allen |
| 2 | Alice | Bob |
±---------±---------±----------+
Address表:
±----------±---------±--------------±-----------+
| addressId | personId | city | state |
±----------±---------±--------------±-----------+
| 1 | 2 | New York City | New York |
| 2 | 3 | Leetcode | California |
±----------±---------±--------------±-----------+
输出:
±----------±---------±--------------±---------+
| firstName | lastName | city | state |
±----------±---------±--------------±---------+
| Allen | Wang | Null | Null |
| Bob | Alice | New York City | New York |
±----------±---------±--------------±---------+
解释:
地址表中没有 personId = 1 的地址,所以它们的城市和州返回 null。
addressId = 1 包含了 personId = 2 的地址信息。

题解

根据输入和输出分析推断,出现了多表字段融合,首先考虑join操作
因输出结果中存在右表为null值的情况,所以需要选择left join,左外连接即可。

-- 参考sql样例select t1.firstname,t1.lastname,t2.city,t2.state
from person t1
left join address t2 on t1.personid = t2.personid

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com