SQL中的自然连接是什么意思啊?
书上说:自然连接运算的结果表是在参与操作的两个表的共同属性上进行等值条件连接,再去除重复属性后所得的新表。这话看的不是很明白,请大家用自己所理解的语言告诉我好吗?:)重复...
书上说:自然连接运算的结果表是在参与操作的两个表的共同属性上进行等值条件连接,再去除重复属性后所得的新表。
这话看的不是很明白,请大家用自己所理解的语言告诉我好吗?:)
重复属性是指列名相同的表吧?
A表:
T1 T2 T3
10 A1 B1
5 A1 C2
20 D2 C2
B表:
T1 T4 T5 T6
1 100 A1 D1
100 2 B2 C1
20 0 A2 D1
5 10 A2 C2
将A表和B表做自然连接,结果为:
T1 T2 T3 T4 T5 T6
5 A1 C2 10 A2 C2
20 D2 C2 0 A2 D1
请问,这种结果是怎么来的呢??我没有分数可给,可我很想知道答案,谢谢回答问题的好心人了。:) 展开
这话看的不是很明白,请大家用自己所理解的语言告诉我好吗?:)
重复属性是指列名相同的表吧?
A表:
T1 T2 T3
10 A1 B1
5 A1 C2
20 D2 C2
B表:
T1 T4 T5 T6
1 100 A1 D1
100 2 B2 C1
20 0 A2 D1
5 10 A2 C2
将A表和B表做自然连接,结果为:
T1 T2 T3 T4 T5 T6
5 A1 C2 10 A2 C2
20 D2 C2 0 A2 D1
请问,这种结果是怎么来的呢??我没有分数可给,可我很想知道答案,谢谢回答问题的好心人了。:) 展开
3个回答
展开全部
select A.t1,A.t2,A.t3,B.t4,B.t5,B.t6 from A inner join B on A.t1=B.t1;
inner join 只显示符合条件的数据行,此为默认的join方式,inner 可以省略
left join 显示符全条件的数据行及左边数据表中不符合条件的数据行
right join 显示符全条件的数据行及右边数据表中不符合条件的数据行
full join 显示符全条件的数据行及左边和右边数据表中不符合条件的数据行
cross join 直接将一个数据表的每一条数据行和另一个数据表的每一条数据行搭配成新的数据 行,不要on 来设置条件
inner join 只显示符合条件的数据行,此为默认的join方式,inner 可以省略
left join 显示符全条件的数据行及左边数据表中不符合条件的数据行
right join 显示符全条件的数据行及右边数据表中不符合条件的数据行
full join 显示符全条件的数据行及左边和右边数据表中不符合条件的数据行
cross join 直接将一个数据表的每一条数据行和另一个数据表的每一条数据行搭配成新的数据 行,不要on 来设置条件
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
指通过对参与表关系中所有同名的属性对取等(即相等比较)来完成的,故无须自己添加连接条件,例:select * from student natual join teacher。
同属于join操作,还包括外连接和内连接。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询