当前位置: 首页 > article >正文

SQL—leetcode—175. 组合两个表

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


http://www.kler.cn/a/451559.html

相关文章:

  • css改变输入右下角图标
  • MacOS M3源代码编译Qt6.8.1
  • “檢測到不安全的代理”怎麼修復?
  • 【CryptoJS库AES加密】
  • SQL 实战:窗口函数的妙用 – 分析排名与分组聚合
  • Spring Boot 应用开发入门(一)
  • 如何在 Ubuntu 上安装 PyTorch
  • LabVIEW实现WiFi通信
  • ES6学习Generator 函数(生成器)(八)
  • 匈牙利算法
  • Java基本查询(四)
  • minicpm 多模态RAG构建案例
  • 组态软件行业市场发展现状
  • 怎麼驗證HTTP代理的可靠性?
  • 信息安全技术——防火墙、入侵检测技术
  • 【深度学习】嘿马深度学习笔记第10篇:卷积神经网络,学习目标【附代码文档】
  • Hadoop中MapReduce过程中Shuffle过程实现自定义排序
  • 演讲 | 学好语文的经验介绍
  • [react]不能将类型“string | undefined”分配给类型“To”。 不能将类型“undefined”分配给类型“To”
  • cudnn版本gpu架构
  • 用 ElementUI 的日历组件 Calendar 自定义渲染
  • 面试经验分享 | 北京渗透测试岗位
  • Spring Boot框架结合MongoDB实现日志数据的保存和归档
  • 50.第二阶段x86游戏实战2-lua获取本地寻路,跨地图寻路和获取当前地图id
  • H3C交换机远程登录基本配置
  • es 中 terms set 使用