`

oracle 连接

阅读更多
前提准备:


表的创建:

CREATE TABLE A_TEST
(
    A_ID                           VARCHAR2(100) NOT NULL,
    A_C1                           VARCHAR2(100),
    A_C2                           VARCHAR2(100),
    A_C3                           VARCHAR2(100),
    A_C4                           VARCHAR2(100)
)
数据:
1	AC1_1	AC2_1	AC3_1	AC4_1
2	AC1_2	AC2_2	AC3_2	AC4_2
3	AC1_3	AC2_3	AC3_3	AC4_3
4	AC1_4	AC2_4	AC3_4	AC4_4
5	AC1_5	AC2_5	AC3_5	AC4_5
6	AC1_6	AC2_6	AC3_6	AC4_6
7	AC1_7	AC2_7	AC3_7	AC4_7
11	AC1_11	AC2_11	AC3_11	AC4_11


CREATE TABLE B_TEST
(
    B_ID                           VARCHAR2(100) NOT NULL,
    B_C1                           VARCHAR2(100),
    B_C2                           VARCHAR2(100),
    B_C3                           VARCHAR2(100),
    B_C4                           VARCHAR2(100),
    B_C5                           VARCHAR2(100),
    B_C6                           VARCHAR2(100)
)
数据:
1	BC1_1	BC2_1	BC3_1	BC4_1	BC5_1	BC6_1
2	BC1_2	BC2_2	BC3_2	BC4_2	BC5_2	BC6_2
3	BC1_3	BC2_3	BC3_3	BC4_3	BC5_3	BC6_3
4	BC1_4	BC2_4	BC3_4	BC4_4	BC5_4	BC6_4
5	BC1_5	BC2_5	BC3_5	BC4_5	BC5_5	BC6_5
6	BC1_6	BC2_6	BC3_6	BC4_6	BC5_6	BC6_6
7	BC1_7	BC2_7	BC3_7	BC4_7	BC5_7	BC6_7
8	BC1_8	BC2_8	BC3_8	BC4_8	BC5_8	BC6_8
9	BC1_9	BC2_9	BC3_9	BC4_9	BC5_9	BC6_9
10	BC1_10	BC2_10	BC3_10	BC4_10	BC5_10	BC6_10




内连接

SELECT A.A_C1
      ,B.B_C1
  FROM A_TEST A
      ,B_TEST B
 WHERE A.A_ID = B.B_ID

检索结果:
AC1_1	BC1_1
AC1_2	BC1_2
AC1_3	BC1_3
AC1_4	BC1_4
AC1_5	BC1_5
AC1_6	BC1_6
AC1_7	BC1_7



左连接(left outer join 或者 left join)
左外连接就是在等值连接的基础上加上主表中的未匹配数据,A left join B  A就是主表


SELECT A.A_C1
      ,B.B_C1
  FROM A_TEST A LEFT JOIN B_TEST B
 ON A.A_ID = B.B_ID

检索结果:
AC1_1	BC1_1
AC1_2	BC1_2
AC1_3	BC1_3
AC1_4	BC1_4
AC1_5	BC1_5
AC1_6	BC1_6
AC1_7	BC1_7
AC1_11	(NULL)



右连接 (right outer join 或者 right join)
右外连接是在等值连接的基础上加上被连接表的不匹配数据  A RIGHT JOIN B B是主表
SELECT A.A_C1
      ,B.B_C1
  FROM A_TEST A RIGHT JOIN B_TEST B
 ON A.A_ID = B.B_ID

检索结果:
AC1_3	BC1_3
AC1_1	BC1_1
AC1_2	BC1_2
AC1_4	BC1_4
AC1_5	BC1_5
AC1_6	BC1_6
AC1_7	BC1_7
(NULL)	BC1_10
(NULL)	BC1_9
(NULL)	BC1_8




※: left join   左边是主表  right join 右边的是主表


全连接(full outer join 或者 full join)
全外连接是在等值连接的基础上将左表和右表的未匹配数据都加上

SELECT A.A_C1
      ,B.B_C1,B.B_C2
  FROM A_TEST A FULL JOIN B_TEST B
 ON A.A_ID = B.B_ID

检索结果:
AC1_1	BC1_1	BC2_1
AC1_2	BC1_2	BC2_2
AC1_3	BC1_3	BC2_3
AC1_4	BC1_4	BC2_4
AC1_5	BC1_5	BC2_5
AC1_6	BC1_6	BC2_6
AC1_7	BC1_7	BC2_7
(NULL)	BC1_8	BC2_8
(NULL)	BC1_9	BC2_9
(NULL)	BC1_10	BC2_10
AC1_11	(NULL)	(NULL)



分享到:
评论

相关推荐

    oracle连接需要的驱动

    标题提到的"oracle连接需要的驱动"指的是Oracle JDBC驱动,它允许Java应用程序通过JDBC(Java Database Connectivity)接口与Oracle数据库进行通信。 Oracle JDBC驱动主要有四种类型: 1. ** Thin Driver (jdbc:...

    oracle连接数问题

    通过细致地调整Oracle数据库的`pga_aggregate_target`、`processes`、`sessions`参数,以及优化`LISTENER.ORA`文件和操作系统配置,可以有效解决Oracle连接数问题,提升数据库的并发处理能力。这些操作需要根据具体...

    Oracle连接工具plsql11x64位

    Oracle连接工具plsql11x64位Oracle连接工具plsql11x64位Oracle连接工具plsql11x64位Oracle连接工具plsql11x64位Oracle连接工具plsql11x64位Oracle连接工具plsql11x64位Oracle连接工具plsql11x64位Oracle连接工具...

    Oracle连接字符串

    "Oracle 连接字符串多种方法" Oracle 连接字符串是指连接 Oracle 数据库的字符串书写方法,本文总结了多种连接 Oracle 数据库的字符串书写方法。 一、标准连接字符串 标准连接字符串是最基本的连接字符串格式,...

    oracle连接的包

    "oracle连接包"可能指的是Oracle的ojdbc驱动,例如`ojdbc8.jar`或`ojdbc7.jar`等,这些驱动包允许Java应用通过JDBC API与Oracle数据库建立连接。将这个连接包放入项目的`lib`目录下,意味着它是项目运行时的依赖库,...

    Oracle连接常见问题

    Oracle连接常见问题 Oracle连接常见问题

    C#中oracle连接数据库的封装类

    在本场景中,我们关注的是一个名为"C#中oracle连接数据库的封装类"的主题,这个主题涉及到创建一个名为`DbHelperOra.cs`的类,用于简化与Oracle数据库的交互。这种封装可以提高代码的可读性和复用性,减少直接处理...

    oracle连接db2数据库的步骤

    标题:“Oracle 连接 DB2 数据库的详细步骤” 本文将详细介绍如何在 Oracle 环境中配置和连接到 DB2 数据库,包括获取必要的信息、配置 ODBC 数据源、修改 Oracle 相关配置文件以及验证连接。以下是一步步的详细...

    webphere下oracle连接池的配置

    在WebSphere环境下配置Oracle连接池是一项重要的任务,它能够显著提高应用程序的性能和响应速度。连接池技术可以有效管理数据库连接资源,避免频繁创建和销毁连接带来的性能开销。本文将详细介绍在WebSphere应用...

    非常好用的oracle连接工具 ob10

    非常好用的oracle连接工具 ob10(免安装已破解),方便导入导出,比较明了,跟pl/sql可以媲美的哦。

    oracle连接数据库的驱动包

    为了与Oracle数据库进行交互,开发者通常需要一个数据库驱动程序,这就是"Oracle连接数据库的驱动包"的作用。这个驱动包使得Java应用程序能够通过JDBC(Java Database Connectivity)接口与Oracle数据库建立连接,...

    异构服务提高Oracle连接异种数据源能力

    【异构服务提高Oracle连接异种数据源能力】 在企业环境中,由于历史发展和业务需求,往往存在多种数据库平台并存的情况,每种平台都承载着相应的应用系统。随着业务的扩展,如何在不干扰现有应用的情况下高效整合...

    64位PLSQL免安装Oracle连接工具

    标题中的“64位PLSQL免安装Oracle连接工具”指的是一个专为64位操作系统设计的,无需完整安装Oracle数据库就能使用的PL/SQL Developer(PLSQL)连接工具。这个工具通常依赖于Oracle的Instant Client,它是一个轻量级...

    oracle连接查询SQL性能测试

    标题“Oracle连接查询SQL性能测试”涉及的是数据库管理和优化领域,特别是针对Oracle数据库系统的SQL查询性能分析。在Oracle中,连接查询(JOINs)是整合多个表数据的关键操作,其性能直接影响到数据库的整体效率。...

    oracle连接失败

    在IT领域,尤其是在数据库管理与运维中,遇到“Oracle连接失败”的情况是常见的技术挑战之一。本文将深入探讨这一问题,特别是聚焦于标题与描述中提及的“ORA-12560:TNS:协议适配器错误”,并提供详细的解决方案。 ...

    oracle连接配置

    Oracle 连接配置是一种常用的数据库连接方式,它允许用户通过指定的连接字符串连接到 Oracle 数据库中。在本文中,我们将详细介绍 Oracle 连接配置的步骤和注意事项。 连接字符串的组成 Oracle 连接字符串通常由三...

    .net oracle 连接测试

    .net oracle 连接测试小程序,包括oracleclient,oledb等连接方式,framework4.0开发,适应于oracle 8i 9i 10g 11g

    delphi ODAC oracle 连接控件

    在描述中提到的"delphi ODAC oracle 连接控件",实际上指的是ODAC中的TOracleConnection组件,它是连接Oracle数据库的关键部分。 1. **ODAC概述**: ODAC是Devart公司开发的,旨在为Delphi和C++Builder开发者提供...

    C#中连接oracle连接方法

    本篇将详细介绍C#中连接Oracle数据库的方法,包括所需的组件、连接字符串的构建以及使用ADO.NET进行数据操作的基本步骤。 首先,你需要在你的项目中引入Oracle客户端库。Oracle提供了一个名为ODP.NET(Oracle Data ...

Global site tag (gtag.js) - Google Analytics