ORACLE数据库中的表连接关系

来源:互联网 发布:ssl nginx 编辑:程序博客网 时间:2024/06/06 19:57

总结:ORACLE数据库中的表连接关系

 1.内连接

内连接是只显示满足条件的! 

2.外连接

2.1左外连接显示左边全部的和右边与左边相同的 

2.2右外连接显示右边全部的和左边与右边相同的           

1.内连接

Select * from A JOIN B ON A.Aid=B.Bnameid

分析:Aid(1,2,3,4,5,6,7,8,9);Bnameid(2,3,6,7,8,11);

结果: A.Aid=B.Bnameid2,3,6,7,8,)见c表。


               

2.外连接

2.1左外连接

select * from A Left JOIN B ON A.Aid=B.Bnameid

分析:Aid(1,2,3,4,5,6,7,8,9);Bnameid(2,3,6,7,8,11);

结果:Aid(1,2,3,4,5,6,7,8,9);没有的数据是空。见D表。

2.2右外连接

select * from A Right JOIN B ON A.Aid=B.Bnameid

分析:Aid(1,2,3,4,5,6,7,8,9);Bnameid(2,3,6,7,8,11);

结果:Bnameid(2,3,6,7,8,11);没有的数据是空。见E表。


 2.3完全外连接

  左右表中的数据全部显示出来,没有的值是空。


备注:交叉连接(笛卡尔积)

笛卡尔乘积 

在数学中,两个集合X和Y的笛卡儿积(Cartesian product),又称直积,表示为X × Y,是其第一个对象是X的成员而第二个对象是Y的一个成员的所有可能的有序对

假设集合A={a,b},集合B={0,1,2},则两个集合的笛卡尔积为{(a,0),(a,1),(a,2),(b,0),(b,1), (b,2)}。

 

笛卡尔积是关系代数里的一个概念,表示第一个表的行数乘以第二个表的行数等于笛卡尔积结果集的大小。



0 0