`
ademen
  • 浏览: 12845 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

Oracle数据库_内连接_外连接_左连接_右连接

 
阅读更多
Oracle数据库_内连接_外连接_左连接_右连接 .
2010-08-05 19:26 35人阅读 评论(0) 收藏 举报
总结:



内连接:仅仅显示匹配的行

外连接:设法显示不匹配的行,包括左(外)连接、右(外)连接、全(外)连接

左(外)连接:左表的行全显示(右表不存在匹配时填null)

右(外)连接:右表的行全显示(左表不存在匹配时填null)

全(外)连接:左连接和右连接的结果再做合并(union)



SQL:



ANSI的写法 不太好看,但是意义明显。

内连接:join 或 inner join

左(外)连接:left join

右(外)连接:right join



Oracle的写法 是在需要补充填null的一方添加“(+)”,表示用null去匹配另一边“没有匹配”的行。

内连接:什么也不做

左(外)连接:右边填“(+)”

右(外)连接:左边填“(+)”





练习:

--prepare

create global temporary table temp1 (
    id number(3), desc1 char(5)
);
create global temporary table temp2 (id number(3), desc2 char(5));
insert into temp1 values (123, 'ABCDE');
insert into temp1 values (456, 'FGHIJ');
insert into temp2 values (456, 'ZZZZZ');
insert into temp2 values (789, 'MMMMM');



Oracle

--left join

select a.id id_a, b.id id_b
from temp1 a, temp2 b
where a.id(+) = b.id



--right join

select a.id id_a, b.id id_b
from temp1 a, temp2 b
where a.id= b.id(+)



ASNI

--inner join(inner is optional )

select ta.id id_a, tb.id id_b
from temp1 ta
  inner join temp2 tb
  on ta.id = tb.id



--left join

select ta.id id_a, tb.id id_b
from temp1 ta
  lest join temp2 tb
  on ta.id = tb.id



--right join

select ta.id id_a, tb.id id_b
from temp1 ta
  right join temp2 tb
  on ta.id = tb.id

--Oracle全外连接(ASIN略)

select a.id id_a, b.id id_b
from temp1 a, temp2 b
where a.id(+) = b.id
      union
select a.id id_a, b.id id_b
from temp1 a, temp2 b
where a.id = b.id(+)
分享到:
评论

相关推荐

    连接oracle数据库cx_Oracle

    连接oralce数据库 适用于win7 64bit的python2.7

    geoserver2.14.0 oracle 数据库连接

    通过以上步骤,你可以成功地在GeoServer 2.14中配置Oracle数据库连接,并展示其中的Shapefile数据。这种集成不仅允许你利用Oracle的强大功能处理大规模的空间数据,还能够通过GeoServer提供丰富的地图服务,用于Web...

    sap 与 oracle数据库的连接

    SAP与Oracle数据库的连接 SAP系统与Oracle数据库的连接是SAP开发中的一个重要步骤,该连接允许SAP系统访问Oracle数据库中的数据,实现数据交换和共享。在本文中,我们将详细介绍SAP开发中模块连接Oracle数据库的...

    易语言连接Oracle数据库

    数据库连接组件用于建立与Oracle数据库的物理连接,而记录集组件则负责在程序中操作数据,如查询、插入、更新和删除记录。 1. 数据库连接组件: - 在易语言中,设置数据库连接通常涉及以下参数: - 数据源(DSN)...

    使用ssl的tcp_ip连接oracle数据库

    使用ssl的tcp_ip连接oracle数据库

    如何连接oracle数据库及故障解决办法

    连接 Oracle 数据库是每个开发者和数据库管理员都需要掌握的基本技能,但是很多人在连接 Oracle 数据库时都会遇到各种问题,本文将详细介绍如何连接 Oracle 数据库及故障解决办法。 首先,在连接 Oracle 数据库之前...

    SQL SERVER连接oracle数据库几种方法

    SQL SERVER 连接 Oracle 数据库几种方法 在实际开发中,我们经常需要在 SQL Server 中连接 Oracle 数据库,以便实现数据交换和集成。那么,如何在 SQL Server 中连接 Oracle 数据库呢?下面我们将介绍几种常见的...

    instantclient_11_2 连接oracle数据

    2. **oraociei11.dll、orannzsbb11.dll、oraocci11.dll**:这些是Oracle数据库连接的关键动态链接库文件,分别提供了OCI(Oracle Call Interface)、Net8 Shared Buffer和OCI的接口,使得应用程序能够调用Oracle的...

    oracle数据库 左连接 右连接 自连接 。。

    在Oracle数据库中,连接操作是查询数据的核心部分,它允许我们合并来自多个表的数据。这里主要涉及三种类型的连接:左连接、右连接和自连接。理解这些连接方式对于有效地管理和查询数据库至关重要。 1. **左连接...

    JAVA 使用数据库连接池连接Oracle数据库全代码

    通过上述步骤,我们可以在Java应用中高效地管理和使用Oracle数据库连接。使用DBCP数据库连接池不仅可以减少频繁创建和销毁数据库连接所带来的开销,还可以更灵活地根据应用程序的需求动态调整连接池的大小,从而提高...

    VC动态SQL方法4连接Oracle的实现.rar_oracle_oracle VC++_oracle vc_oracle 连接

    从标签中,我们可以看到"oracle_vc++"、"oracle_vc"、"oracle_连接_vc"和"vc_oracle",这些标签表明这个项目是关于使用VC++进行Oracle数据库连接的。"oracle"标签表明这是针对Oracle数据库的,而"vc++"则明确指出是...

    sql_server连接Oracle方法(最全)

    "SQL Server 连接 Oracle ...连接 Oracle 数据库需要我们安装 Oracle 客户端程序、添加 Link Server 和连接 Oracle 数据库。同时,我们可能会遇到一些问题,但这些问题都可以通过启动 MSDTC 服务和修改注册表来解决。

    Excel通过VBA连接Oracle数据库

    在Excel中通过Visual Basic for Applications (VBA) 连接Oracle数据库是一种强大的自动化工具,能够让你轻松地从大型数据库中提取、处理和分析数据。VBA是Excel内置的编程环境,允许用户创建自定义功能和宏,以实现...

    oracle数据库连接工具

    "Oracle数据库连接工具"指的是可以方便地连接到Oracle数据库并执行各种操作的软件应用。在给定的标签中提到了"oracle navicat",这指的是Navicat,一个知名的数据库管理工具,特别适合于Oracle数据库的连接和管理。 ...

    linux远程连接oracle数据库

    ### Linux远程连接Oracle数据库知识点详解 #### 一、测试项目 - **通过Java程序远程连接Oracle 10g数据库** - Java作为一种广泛使用的编程语言,可以用来开发各种应用程序,包括与数据库交互的应用。要实现Java...

    Oracle数据库-TNS连接

    TNS,全称为Transparent Network Substrate,透明网络子结构,是Oracle数据库提供的一种网络服务,用于管理和解析数据库连接信息。 在安装Oracle客户端后,TNS配置文件`tnsnames.ora`位于`instantclient_11_2\...

    cx_Oracle-7.3.0_oracle_cx_oracle_cx_Oracle7.3对应_python_jupyteror

    描述中提到"在Jupyter连接Oracle数据库所需要的文件",意味着这个压缩包包含的是在Jupyter Notebook环境中连接到Oracle数据库所需的相关组件。Jupyter Notebook是一款交互式计算环境,它支持编写和运行Python代码,...

    PB如何连接Oracle数据库

    这样,PowerBuilder 已经完成了所有数据库连接的配置,剩下的就是连接上数据库了。 PB 专用接口配置 PB 专用接口配置是连接 Oracle 数据库的第三步。进入 PowerBuilder,点击 DB Profile 选项,选择 Oracle 7.3 或...

    VC_中连接Oracle数据库的几种方法

    ### VC_中连接Oracle数据库的几种方法 #### 引言 随着信息技术的不断发展,数据库管理系统在各类信息系统中的地位越来越重要。Oracle数据库作为一种广泛使用的数据库系统,以其强大的功能、优秀的性能及高安全性...

Global site tag (gtag.js) - Google Analytics