题目
表1: Person
表2: Address
编写一个 SQL 查询,满足条件:无论 person 是否有地址信息,都需要基于上述两表提供 person 的以下信息:
FirstName, LastName, City, State
分析
方法:使用 outer join
算法
因为表 Address 中的 personId 是表 Person 的外关键字,所以我们可以连接这两个表来获取一个人的地址信息。
考虑到可能不是每个人都有地址信息,我们应该使用 outer join 而不是默认的 inner join。
outer join 包括 left join , right join 和full join ,看情况来选择需要的外连接
解答
select FirstName, LastName, City, state
from Person left join Address
on Person.PersonId = Address.PersonId
;