SQL常用的几种连接查询

 我来答
SQL的艺术
2018-07-26 · SQL写多了就会在追求极致
SQL的艺术
采纳数:2040 获赞数:3324

向TA提问 私信TA
展开全部

一、内连接(Inner Join)

select * from a inner join b on a.name=b.name;

此语句的结果为同时匹配表a和表b的记录集。即内连接取的是两个表的交集。

二、全外连接(full outer join)

select * from a full outer join b on a.name=b.name;

此语句的结果为表a与表b的并集,即任意一个表的内容都将被查询出来,如果另一个表无对应的项,则显示为null

select * from a full outer join b on a.name=b.name where a.name is null or b.name is null;

此语句的结果为表a与表b的并集除去两表的交集。即除去了两表都有的部分,剩余的是两表各自不同的部分

三、左外连接(left outer join)

select * from a left outer join b on a.name=b.name;

此语句的结果为表a的所有项加表b与a相匹配的项,b中没有与a匹配的项时显示为null

select * from a left outer join b on a.name=b.name where b.name is null;

此语句的结果为表a的所有项除去两表的交集

四、右外连接(right outer join)

select * from a right outer join b on a.name=b.name;

此语句的结果为表a与表b匹配的项加表b的所有项,a中没有与b匹配的项时显示为null

select * from a right outer join b on a.name=b.name where a.name is null;

此语句的结果为表b的所有除去两表的交集

推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式