多表查询-内连接和外连接
一、笛卡尔积
多张表无条件的联合查询。没有任何意义.a,b为表
select a.*,b.* from a,b; 在此基础上进行条件查询
二、内连接
格式1:显式的内连接
select a.*,b.* from a [inner] join b on ab的连接条件;
格式2:隐式的内连接
select a.*,b.* from a,b where ab的连接条件;
三、外链接
左外连接:
select a.*,b.* from a left [outer] join b on 连接条件;
如;
select user.*,orders.* from user join orders on user.id=orders.user_id;
意思:
先展示join左边的(a)表的所有数据,根据条件关联查询join右边的表(b),符合条件的展示出来,不符合以null值展示
右外连接:
select a.*,b.* from b right [outer] join a on 连接条件;
意思: 先展示join右边的(a)表的所有数据,