画图解释SQL联合语句

  • A+
所属分类:MySQL

SQL joins操作图:

inner join

SQL-Joins

设计两张表A和B,记录如下:

1. 内联合(inner join)只生成同时匹配表A和表B的记录集

图解如下:

inner join

2. 全外联合(full outer join)生成表A和表B里的记录全集,包括两边都匹配的记录。如果有一边没有匹配的,缺失的这一边为null

图解如下:

inner join

 

3. 左外联合(left outer join)生成表A的所有记录,包括在表B里匹配的记录。如果没有匹配的,右边将是null

图解如下:

inner join

 

为了生成只在表A里而不在表B里的记录集,我们用同样的左外联合,然后用where语句排除我们不想要的记录。

图解如下:

inner join

 

为了生成对于表A和表B唯一的记录集,我们用同样的全外联合,然后用where语句排除两边都不想要的记录。

图解如下:

inner join

weinxin
微信公众号
扫一扫关注运维生存时间公众号,获取最新技术文章~

发表评论

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen: