表关联逻辑


模型里的表关联,左关联,右关联、内关联和外关联的逻辑。

现有A和B两张表,用字段1和字段3关联。

表关联逻辑 - 图1


一、内关联:只保留关联字段匹配到的结果,只保留了字段1和字段3都有的值。

表关联逻辑 - 图2

  • 提示:因为字段1和字段2都有两个A,所以他们关联之后会变成4条数据,做笛卡尔积。

二、左关联:保留左表的所有数据,和右表关联的结果,未关联上的结果用null表示。

A和B都有,D虽然没匹配上,但是因为左关联就保留了D,只是右表的数据就都变成null了。

表关联逻辑 - 图3


三、右关联:和左关联同理。保留右表的所有数据,和左表关联的结果,未关联上的结果用null表示。

表关联逻辑 - 图4


四、外关联:保留所有的数据,未关联上的结果用null表示。

表关联逻辑 - 图5

五、三表关联或者多表关联的逻辑:

A表 left join B表 和 left join C表,按照字段1和字段3、字段1和字段5关联

表关联逻辑 - 图6

六、union合并逻辑

表关联逻辑 - 图7

三表合并,因为表C的字段名和表A和表B的不一样,所以union的时候没关联上,union必须保证字段名称和字段类型一样才能合并。

表关联逻辑 - 图8