编写一个 SQL 查询,满足条件:无论 person 是否有地址信息,都需要基于上述两表提供 person 的以下信息:

表1为Penson,表2为Address,如下图所示

编写一个 SQL 查询,满足条件:无论 person 是否有地址信息,都需要基于上述两表提供 person 的以下信息:_第1张图片

要求:编写一个 SQL 查询,满足条件:无论 person 是否有地址信息,都需要基于上述两表提供 person 的以下信息:

FirstName, LastName, City, State

 

问题分析:使用连接查询,分为内连接和外连接
    内连接(inner join)会舍弃两表中不相同的部分
    外连接(left join和right join)除了显示符合条件的记录外,还显示表中的记录

以例子为例进行分析
先在表Person表中添加第4个数据,但不添加对应 Address表 数据:

编写一个 SQL 查询,满足条件:无论 person 是否有地址信息,都需要基于上述两表提供 person 的以下信息:_第2张图片

若使用左连接(left join),SQL语句为

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

结果为: 

编写一个 SQL 查询,满足条件:无论 person 是否有地址信息,都需要基于上述两表提供 person 的以下信息:_第3张图片

 

 

 

 

 

 

 

 

 

 

 

 

 

 

你可能感兴趣的:(MySql,数据库)