astak16/blog-mysql

9 组合两个表

Opened this issue · 0 comments

题目

无论 person 是否有地址信息,都需要基于上述两表提供 person 的一下信息: FirstNameLastNameCityState

create table person (
	personId int,
	firstName varchar(255),
	lastName varchar(255)
);

create table address (
	addressId int primary key,
	personId int,
	city varchar(255),
	state varchar(255)
);

SQL

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

解析

使用左连链接两表 PersonAddress ,连接条件是 personId