首页 » Oracle » ORACLE表关联

ORACLE表关联

原文 http://blog.csdn.net/TouchYoni/article/details/79173347

2018-01-27 02:01:14阅读(277)

内连接(inner_cross_join)

<a href=ORACLE表关联" alt="" src="http://img.blog.csdn.net/20180126155444345?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvVG91Y2hZb25p/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast">


INNER_JOIN :

内连接即关联多张表时根据连接条件筛选符合条件的数据(书写时可以省略inner关键字)

ORACLE表关联


外连接(outer_join)

ORACLE表关联


在外连接中又分为三类,主要有左外连接(left_outer_join)、右外连接(right_outer_join)、全外连接(full_outer_join):

 ORACLE表关联

LEFT_OUTER_JOIN/LEFT_JOIN:

左外连接在多表关联时根据关联条件匹配符合条件的数据,左表的数据会全匹配,而在右表中无法匹配的数据则显示NULL

ORACLE表关联

RIGHT_OUTER_JOIN/RIGHT_JOIN:

右外连接与左外连接相反,即右表数据全匹配,左表数据无法匹配则为NULL

ORACLE表关联

FULL_OUTER_JOIN/FULL_JOIN:

全外连接则显示所有的不管是否能关联上的数据,没匹配上的为NULL

除此之外外连接还可以用(+)来表示

select ename,sal,dname from emp a left join  dept b on a.deptno=b.deptno;
等价于
select ename,sal,dname from emp a,dept b where a.deptno=b.deptno(+);
自连接:

自连接即将单一的表用别名区别当作两张表来关联

NATURAL JOIN:

自然连接是一种特殊的等值连接,它会删除关联表的重复列

CROSS_JOIN:

交叉连接,连接生成两张表的笛卡儿积。返回的记录数等于两张表相乘,将两张表的数据相互连接。

USING子句 USING子句只能用于等值连接USING要求关联字段名相同USING和natural join冲突



最新发布

CentOS专题

关于本站

5ibc.net旗下博客站精品博文小部分原创、大部分从互联网收集整理。尊重作者版权、传播精品博文,让更多编程爱好者知晓!

小提示

按 Ctrl+D 键,
把本文加入收藏夹