mysql内连接和外连接的区别

 我来答
308xiaobao
高粉答主

推荐于2018-03-03 · 每个回答都超有意思的
知道大有可为答主
回答量:2.6万
采纳率:95%
帮助的人:2751万
展开全部
以下介绍mysql内连接和外连接的区别:

--表tab1
id name
1, Jack
2, Tom
3, Kity
--表tab2
id grade
1, 56
2, 76
11, 89

内连接:进行连接的两个表对应的相匹配的字段完全相同的连接。
select t1.*,t2.id as t2id,t2.grade from tab1 t1 inner join tab2 t2 on t1.id=t2.id
结果:
id name t2id grade
1 Jack 1 56
2 Tom 2 76

外连接又分为左外连接和右外连接。
左连接即LEFT OUTER JOIN:
两个表进行左连接时会返回左边表中的所有的行和右边表中与之相匹配的列值没有相匹配的用空值代替。
select t1.*,t2.id as t2id,t2.grade from tab1 t1 left outer join tab2 t2 on t1.id=t2.id
结果:
id name t2id grade
1 Jack 1 56
2 Tom 2 76
3 Kity null null
右连接即RIGHT OUTER JOIN:
两个表进行右连接时会返回右边表中的所有的行和左边表中与之相匹配的列值没有相匹配的用空值代替。
select t1.*,t2.id as t2id,t2.grade from tab1 t1 right outer join tab2 t2 on t1.id=t2.id
结果:
id name t2id grade
1 Jack 1 56
2 Tom 2 76
null null 11 89

以上通过一个例子描述内连接和外连接的区别。
ITeye彡
2016-09-06 · 超过18用户采纳过TA的回答
知道答主
回答量:34
采纳率:100%
帮助的人:6.6万
展开全部
  1. 内连接:进行连接的两个表对应的相匹配的字段完全相同的连接。 
    2.外连接又分为左外连接和右外连接

  2. 内联接:显示两个表想匹配的行,左连接显示JION左表的行,右表没有想匹配的,用NUL代替!右联接和左连接相反,全连接和左右连接的合计。

已赞过 已踩过<
你对这个回答的评价是?
评论 收起
来学习的DBA
推荐于2017-11-22 · TA获得超过298个赞
知道小有建树答主
回答量:369
采纳率:0%
帮助的人:210万
展开全部
内连接:两张表数据列完全相同的行

外连接分左连接跟右连接

左连接:已左表为主表,右表对不上的列以null替代
右连接反之
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式