SQL多表连接查询

Join关键字

join用于根据两个或者多个表之间的关系,查询所需结果数据,包括inner  join,left join,right join,full join几种用法

例子中用到的表结构以及数据

表结构

inner join

连接的表中至少有1个匹配行,才返回相应的结果。否则返回null

inner join

当Person表中的PersonId存在于Address表中的PersonId,以上SQL语句才会返回结果,否则返回空。

例子中的表结构返回的结果为null。

left join

从左表中返回所有的行,即使右表中没有匹配的行

left join

返回Person表中所有的行,即使Address表中没有相应的PersonId。

例子中表数据,返回结果为{"headers":["FirstName","LastName","City","State"],"values":[["Allen","Wang",null,null]]}

right join

从右表中返回所有的行,即使左表中没有匹配的行

right join

返回Address表中所有的行,即使Person表中没有相应的PersonId。

例子中表数据,返回结果为{"headers":["FirstName","LastName","City","State"],"values":[[null,null,"new york city","new york"]]}

full join

从左表和右表中返回所有的行,即使左右表中没有匹配的行,也会返回在结果中

full join

返回Person表和Address表总的所有行,即使两个表中没有匹配的行。

例子中表数据,返回的结果为{"headers":["FirstName","LastName","City","State"],"values":[["Allen","Wang",null,null],[null,null,"new york city","new york"]]}

你可能感兴趣的:(SQL多表连接查询)