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
- 解
select FirstName, LastName, City, State from Person left outer join Address on Person.PersonId = Address.PersonId;
join
用於把來自兩個或多個表的行結合起來cross join
叉聯結inner join
內聯結outer join
外聯結left outer join
或left join
左外聯結right outer join
或right join
右外聯結full outer join
或full join
全外聯結