Oracle的内连接、左外连接、右外连接及全外连接

简介:

理解Oracle的各种连接方法的最有效的方法就是“躬亲”,在实践中去深刻理解内连接左外连接右外连接全外连接的概念的和效果。1.创建测试表并准备测试数据sec@ora10g> create table a (a number(1),b number(1),c number(1));sec@ora10g> create table b (a number(1),d number(1),e number(1));sec@ora10g> insert into a values(1,1,1);sec@ora10g> insert into a values(2,2,2);sec@ora10g> insert into a values(3,3,3);sec@ora10g> insert into b values(1,4,4);sec@ora10g> insert into b values(2,5,5);sec@ora10g> insert into b values(4,6,6);sec@ora10g> commit;sec@ora10g> select * from a;         A          B          C---------- ---------- ----------         1          1          1         2          2          2         3          3          3sec@ora10g> select * from b;         A          D          E---------- ---------- ----------         1          4          4         2          5          5         4          6          62. 内连接sec@ora10g> select * from a, b where a.a=b.a;另外一种写法如下sec@ora10g> select * from  a inner join b on a.a=b.a;         A          B          C          A          D          E---------- ---------- ---------- ---------- ---------- ----------         1          1          1          1          4          4         2          2          2          2          5          53.左外连接sec@ora10g> select * from  a,b where a.a=b.a(+);另外一种写法如下sec@ora10g> select *  from  a  left outer join b on a.a=b.a;         A          B          C          A          D          E---------- ---------- ---------- ---------- ---------- ----------         1          1          1          1          4          4         2          2          2          2          5          5         3          3          34.右外连接sec@ora10g> select * from  a,b where a.a(+)=b.a;另外一种写法如下sec@ora10g> select * from  a  right outer join b on a.a=b.a;         A          B          C          A          D          E---------- ---------- ---------- ---------- ---------- ----------         1          1          1          1          4          4         2          2          2          2          5          5                                          4          6          65.全外连接sec@ora10g> select * from  a full outer join b on a.a=b.a;         A          B          C          A          D          E---------- ---------- ---------- ---------- ---------- ----------         1          1          1          1          4          4         2          2          2          2          5          5         3          3          3                                          4          6          66.小结通过使用Oracle提供的各种SQL连接功能可以解决诸多的“疑难杂症”,需灵活掌握。Good luck.





     本文转自My_King1 51CTO博客,原文链接:http://blog.51cto.com/apprentice/1360615,如需转载请自行联系原作者



相关文章
|
Oracle 关系型数据库 流计算
Flink CDC不支持直接连接到Oracle ADG备库进行数据同步
Flink CDC不支持直接连接到Oracle ADG备库进行数据同步
310 1
|
SQL Oracle 关系型数据库
本机不安装Oracle客户端,使用PL/SQL Developer连接远程数据库
本机不安装Oracle客户端,使用PL/SQL Developer连接远程数据库
232 0
|
5月前
|
Oracle 关系型数据库 数据库
已解决:idea 连接 oracle 数据库 避雷
已解决:idea 连接 oracle 数据库 避雷
47 2
|
1月前
|
SQL Oracle 关系型数据库
Python连接Oracle
Python连接Oracle
18 0
|
3月前
|
Oracle 关系型数据库
Navicat 连接Oracle ORA-28547: connection to server failed, probable Oracle Net admin error
Navicat 连接Oracle ORA-28547: connection to server failed, probable Oracle Net admin error
109 0
|
5月前
|
Oracle 数据可视化 关系型数据库
Oracle数据库安装及使用Navicat连接oracle2
Oracle数据库安装及使用Navicat连接oracle
|
5月前
|
Oracle 关系型数据库 数据库
实时计算 Flink版产品使用问题之连接到Oracle数据库但无法读取到数据,是什么导致的
实时计算Flink版作为一种强大的流处理和批处理统一的计算框架,广泛应用于各种需要实时数据处理和分析的场景。实时计算Flink版通常结合SQL接口、DataStream API、以及与上下游数据源和存储系统的丰富连接器,提供了一套全面的解决方案,以应对各种实时计算需求。其低延迟、高吞吐、容错性强的特点,使其成为众多企业和组织实时数据处理首选的技术平台。以下是实时计算Flink版的一些典型使用合集。
|
5月前
|
Oracle 安全 关系型数据库
Oracle数据库安装及使用Navicat连接oracle1
Oracle数据库安装及使用Navicat连接oracle
|
6月前
|
Oracle Java 关系型数据库
【服务器】python通过JDBC连接到位于Linux远程服务器上的Oracle数据库
【服务器】python通过JDBC连接到位于Linux远程服务器上的Oracle数据库
78 6
|
6月前
|
消息中间件 Oracle 关系型数据库
实时计算 Flink版操作报错合集之在连接Oracle 19c时报错如何解决
在使用实时计算Flink版过程中,可能会遇到各种错误,了解这些错误的原因及解决方法对于高效排错至关重要。针对具体问题,查看Flink的日志是关键,它们通常会提供更详细的错误信息和堆栈跟踪,有助于定位问题。此外,Flink社区文档和官方论坛也是寻求帮助的好去处。以下是一些常见的操作报错及其可能的原因与解决策略。
121 0