SQL的各种联合

贡献者: 不愿渡过一

SQL联合的语句对于新手来说是一份很不错的指导资料,SQL联合语句是基于集合的一种,可以勉强用韦恩图的方法跟大家介绍。

1首先我们来假设一下,假设有两张表,一张表A为左边,一张表B为右边,然后用name字段来介绍这些展现的不同方法。一共有六种不同的方法,下面就先来介绍第一种内联合法。

2所谓的内联合法就是只允许生成可以同时匹配的表A和表B的集合,然后交叉形成的公共部分就是,但是表A不是表B,只有一小部分是重合的。

3有内联合就有外联合,外联合是生成表A和表B的记录全集,它包括了两边都匹配的记录,如果有一边没有匹配,没有匹配的这一边就形成了null,如果两边都匹配了,那就不会形成null。

4接下来先介绍左边的联合,左外联合主要是生成左边的也就是表A的所有的记录,但是其中也包括表B在表A里面的部分,如果没有匹配成功,右边就是null。

5上面讲了左外联合,下面将左外联合的另外一种,用where语句排除一边不需要的记录,使生成的只在表A里面而不在表B的记录集合里面,这样就不会有null的出现了。

6或者用全外联合的方法,然后再用where的语句来排除两边都不需要的记录,这样两边都不会出现null,这也是生成表A和表B唯一的记录集合。

1 2 3 4 5