1818IP-服务器技术教程,云服务器评测推荐,服务器系统排错处理,环境搭建,攻击防护等

当前位置:首页 - 数据库 - 正文

君子好学,自强不息!

以下的文章主要是对Oracle外联接、交叉连接的表连接语句的整理,Oracle数据库的联接主要有这几种,即 ,内连接(inner join)、Oracle外联接、全连接(full join)、左连接(left join)、右连接(right join)、交叉联接(cross join)。

外联接与内联接不一样,外连接返回到查询结果中的不仅包含符合条件的行,还包括左表(左外连接),右表(右外连接)或者两个连接表(全外连接)中的所有不符合条件的数据行。

1.左联接 (left [outer] join)

左外联结就是将左表的所有数据分别于右表的每条数据进行连接组合,返回的结果除内连接的数据外,还有左表中不符合条件的数据,并在右表的相应列中填上null值。

SQL语句如下:

select*frommt_pb_orgoleftjoinmt_pb_orgframefono.PB_ORGFRAMEID=f.PB_ORGFRAMEID;

等价语句:

select*frommt_pb_orgo,mt_pb_orgframefwhereo.pb_orgframeid=f.pb_orgframeid(+);

2.右联接 (right [outer] join)

右外联结就是将右表中的所有数据分别与左表的每条数据进行连接组合,返回的结果除了内连接的数据外,还有右表中不符合条件的数据,并在左表相应的列中填上null值。

SQL语句如下:

select*frommt_pb_orgorightjoinmt_pb_orgframeon
o.pb_orgframeid=f.pb_orgframeid;

等价语句:

select*frommt_pb_orgo,mt_pb_orgframefwhereo.
pb_orgframeid(+)=f.pb_orgframeid;

3.全Oracle外联接 (full [outer] join)

全外联接就是将左表的所有数据分别与右表的每条数据进行连接组合,返回的结果除了内连接的数据外,还有两个表中不符合条件的数据,并在左表或者右表的相应列中填上null值。

SQL语句如下:

select*frommt_pb_orgofulljoinmt_pb_orgframe
o.pb_orgframeid=f.pb_orgframeid;

4.交叉连接(cross join)

交叉连接不带WHERE 子句,它返回被连接的两个表所有数据行的笛卡尔积,返回到结果集合中的数据行数等于第一个表中符合查询条件的数据行数乘以第二个表中符合查询条件的数据行数。

SQL语句如下:

select*frommt_pb_orgocrossjoinmt_pb_orgframef;

本文来源:1818IP

本文地址:https://www.1818ip.com/post/11105.html

免责声明:本文由用户上传,如有侵权请联系删除!

发表评论

必填

选填

选填

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。