Problem 175: Combine Two Tables

Categories: LeetCode-Database

阅读中文

175. Combine Two Tables

Table 1: Person

Column Name Type
PersonId int
FirstName varchar
LastName varchar

PersonId is the primary key for this table.

Table 2: Address

Column Name Type
AddressId int
PersonId int
City varchar
State varchar

AddressId is the primary key for this table.

Write a SQL query that provides the following information for each person in the Person table, regardless of whether there is an address entry for that person:

FirstName, LastName, City, State

SQL script:

Create table Person (PersonId int, FirstName varchar(255), LastName varchar(255));
Create table Address (AddressId int, PersonId int, City varchar(255), State varchar(255));
Truncate table Person;
insert into Person (PersonId, LastName, FirstName) values ('1', 'Wang', 'Allen');
Truncate table Address;
insert into Address (AddressId, PersonId, City, State) values ('1', '2', 'New York City', 'New York');

Solution

Solution 1: LEFT JOIN

SELECT
    FirstName,
    LastName,
    City,
    State
FROM
    Person
    LEFT JOIN
    Address ON (Person.PersonId = Address.PersonId);