Leetcode No.175.Combine Two Tables
175. Combine Two Tables
原题目链接:175. Combine Two Tables
表: Person
+-------------+---------+ | Column Name | Type | +-------------+---------+ | PersonId | int | | FirstName | varchar | | LastName | varchar | +-------------+---------+ PersonId 是这个表的主键。
表: Address
+-------------+---------+ | Column Name | Type | +-------------+---------+ | AddressId | int | | PersonId | int | | City | varchar | | State | varchar | +-------------+---------+ AddressId 是这个表的主键。
写一条SQL查询语句,为每一个在Person表中的人提供以下信息,不考虑是否每一个人都有对于的地址:
FirstName, LastName, City, State
Solution
方法:采用OUTER JOIN[Accepted]
Algorithm
因为Address表中的PersonId诗Person表的外键,我们可以JOIN 两张表获得每个人的地址信息。
考虑到并不是所有人都有对于的地址信息,我们应该采用OUTER JOIN,而不是INNER JOIN。
MySQL
1 | select FirstName, LastName, City, State |