LeetCode(175)-组合两个表

题目:

表1: Person

±------------±--------+
| 列名 | 类型 |
±------------±--------+
| PersonId | int |
| FirstName | varchar |
| LastName | varchar |
±------------±--------+
PersonId 是上表主键
表2: Address

±------------±--------+
| 列名 | 类型 |
±------------±--------+
| AddressId | int |
| PersonId | int |
| City | varchar |
| State | varchar |
±------------±--------+
AddressId 是上表主键

编写一个 SQL 查询,满足条件:无论 person 是否有地址信息,都需要基于上述两表提供 person 的以下信息:

FirstName, LastName, City, State

题解:

要求通俗来说就是,只要Person存在的,Address表必须有,配对上,如果没有,那么就用null或者默认值替代。
着符合我们左连接的性质。

select FirstName,LastName,City,State from Person p left join Address a on p.PersonId=a.PersonId;

猜你喜欢

转载自blog.csdn.net/Fly_Fly_Zhang/article/details/95317883