阅读 79

sqlserver内连接和外连接,左外连接和右外连接的区别

内连接是指保证两个表中的所有行都满足连接条件。 外连接不仅包括满足连接条件的行,还包括左表、右表或两个边缘连接表中的所有数据行。

内连接:连接的结果中只包含满足连接条件的行,参与连接的两个表必须满足连接条件。

外连接:连接结果不仅包括满足连接条件的行,还包括自身不满足条件的行。 包括左外部连接、右外部连接、全外部连接。

左外连接:保留左表中的所有数据行,右表中保留满足连接条件的行。

右外连接:保留右表中的所有数据行,左表中保留满足连接条件的行。

全外连接:保留所有行。

示例:

表TESTA、TESTB、TESTC,分别有a、b两列。

a .内部连接

内连接,最常见的等效连接,例如:

选择*

FROM TESTA,TESTB

WHERE TESTA.A=TESTB.A

b .外部连接

外部连接分为左外部连接、右外部连接和全外部连接。

1 .在左外连接左输出或左输出

左外连接是指在主表中不匹配的数据上添加等效连接。 示例:

选择*

来自testa

LEFT OUTER JOIN TESTB

ON TESTA.A=TESTB.A

将三个表格设置为左外链接:

选择*

来自testa

LEFT OUTER JOIN TESTB

ON TESTA.A=TESTB.A

LEFT OUTER JOIN TESTC

ON TESTA.A=TESTC.A

2 .在右外连接right outer join或right join

右外连接是在等价连接上添加了被连接表的不匹配数据

选择*

来自testa

RIGHT OUTER JOIN TESTB

ON TESTA.A=TESTB.A

在全外部连接完全输出或完全输出

全外连接是基于等效连接将左表和右表中不匹配的数据相加。

选择*

来自testa

FULL OUTER JOIN TESTB

ON TESTA.A=TESTB.A

阅读原文


文章分类
代码人生
文章标签
版权声明:本站是系统测试站点,无实际运营。本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 XXXXXXo@163.com 举报,一经查实,本站将立刻删除。
相关推荐