sql中inner join和natural join的区别

 我来答
Baby_原來
2017-09-12 · TA获得超过3402个赞
知道大有可为答主
回答量:1535
采纳率:94%
帮助的人:491万
展开全部

1、inner join是内连接,显示符合连接条件的记录
语法如下:

select select_list from table1 inner join tabl2 on table1.column1=table2.column1


2、natural join是对两张表中字段名和数据类型都相同的字段进行等值连接,并返回符合条件的结果 。
natural join是自然连接,自动对两个表按照同名的列进行内连接语法如下:

select select_list from table1 natural join tabl2


使用自然连接要注意,两个表同名的列不能超过1个。

3、natural join:指明了两表进行自然连接,并且连接是基于两表中所有同名字段的。
4、 join...using:用于两表有同名字段但数据类型不同,或者使用多个同名字段中的某一个做等值连接
5、 join...on :最为灵活,可以指明连接的条件。
新加入字段导致自然连接的条件发生变化,修改后变为了指定字段的等值连接。像这种项目中的类似问题,还是不要使用自然连接的好,最开始就使用join...using或join...on避免他人因修改表结构造成的错误

已赞过 已踩过<
你对这个回答的评价是?
评论 收起
伪墨墨墨墨墨
2017-09-12 · TA获得超过2210个赞
知道大有可为答主
回答量:1678
采纳率:85%
帮助的人:931万
展开全部
inner join是内连接,显示符合连接条件的记录
语法如下:
select select_list from table1 inner join tabl2 on table1.column1=table2.column1
natural join是对两张表中字段名和数据类型都相同的字段进行等值连接,并返回符合条件的结果 。
natural join是自然连接,自动对两个表按照同名的列进行内连接语法如下:
select select_list from table1 natural join tabl2
使用自然连接要注意,两个表同名的列不能超过1个。
natural join:指明了两表进行自然连接,并且连接是基于两表中所有同名字段的。
join...using:用于两表有同名字段但数据类型不同,或者使用多个同名字段中的某一个做等值连接
join...on :最为灵活,可以指明连接的条件。
新加入字段导致自然连接的条件发生变化,修改后变为了指定字段的等值连接。像这种项目中的类似问题,还是不要使用自然连接的好,最开始就使用join...using或join...on避免他人因修改表结构造成的错误。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式