SQL 连接(JOIN) SQL join 用于把来自两个或多个表的行结合起来。 下图展示了 LEFT JOIN、RIGHT JOIN、INNER JOIN、OUTER JOIN 相关的 7 种用法。 类型描述INNER JOIN返回两个表中满足连接条件的记录(交集)。LEFT JOIN返回左表中的所有记录,即使右表中没有匹配的记录
对于Full Join 而言无论,只有同时满足的时候才会返回全部关联的数据,假如有一方不满足返回以左边的表数据为基准返回: 代码语言:javascript 复制 --全连接 select*from Students s full join Class c on s.ClassId=c.ClassId--全连接加on查询 select*from Students s full join Class c on s.ClassId=c.Class...
内联合(inner join) 只生成同时匹配表A和表B的记录集。(如下图) inner join 代码语言:javascript 复制 SELECT*FROMTableAINNERJOINTableBONTableA.name=TableB.name id name id name---1Pirate2Pirate3Ninja4Ninja 全外联合(full outer join) 生成表A和表B里的记录全集,包括两边都匹配的记录。如果有一边没有...
1.INNER JOIN SELECT * FROM TableAINNER JOINTableB ON TableA.name = TableB.name 2.FULL [OUTER] JOIN (1) SELECT * FROM TableAFULL OUTER JOINTableB ON TableA.name = TableB.name 4.RIGHT [OUTER] JOIN RIGHT OUTERJOIN 是后面的表为基础,与LEFT OUTER JOIN用法类似。这里不介绍了。 5.UNION...
Inner join 产生的结果集中,是A和B的交集。 2.FULL [OUTER] JOIN (1) SELECT * FROM TableAFULL OUTER JOINTableB ON TableA.name = TableB.name 结果集 Full outer join 产生A和B的并集。但是需要注意的是,对于没有匹配的记录,则会以null做为值。
一、含义 基于表之间的共同字段,把来自两个或多个表的行结合起来 二、分类 内连接:join / inner join 外连接:left join / right join / full outer join 二、语法 select xxx from 表1 join 表2 on 表1.A = 表2.A
1、Left / Right Join 2、Inner Join 3、Full Outer Join 4、Left / Right Anti Join 5、Left / Right Semi Join 6、Cross Join 三、总结 读完本篇文章,你将收获SQL中所有关于join的用法: left/right outer join inner join full outer join
图三full join 图四full join - 为null的 即:不包含相交的 left outer join: 图四为 右表所有数据集都归属到左边。为null 则为null 图五为:和左表相连 右表为null的数据 左表排除和右表相交部分。 right outer join: 图示与周四与周五。深色相反。