转载自:http://wanglei8.iteye.com/blog/453835
--建立测试数据 create table a(id number); create table b(id number); insert into a values(1); insert into a values(2); insert into a values(3); insert into b values(1); insert into b values(2); insert into b values(4); commit; --左: --主流数据库通用的方法 select * from a left join b on a.id=b.id; --Oracle特有的方法 select * from a, b where a.id=b.id(+); ID ID ---------- ---------- 1 1 2 2 3 --右: --主流数据库通用的方法 select * from a right join b on a.id=b.id; --Oracle特有的方法 select * from a, b where a.id(+)=b.id; ID ID ---------- ---------- 1 1 2 2 4 --内 --主流数据库通用的方法 select * from a join b on a.id=b.id; --where关联 select * from a, b where a.id=b.id; ID ID ---------- ---------- 1 1 2 2 --全外 --主流数据库通用的方法 select * from a full join b on a.id=b.id; --Oracle特有的方法 select * from a, b where a.id = b.id(+) union select * from a, b where a.id(+) = b.id; ID ID ---------- ---------- 1 1 2 2 3 4 --完全,也叫交叉连接或者笛卡尔积 --主流数据库通用的方法 select * from a,b; --或者 select * from a cross join b; ID ID ---------- ---------- 1 1 1 2 1 4 2 1 2 2 2 4 3 1 3 2 3 4 连接无非是这几个 --内连接和where相同 inner join --左向外连接,返回左边表所有符合条件的 left join --右向外连接,返回右边表所有符合条件的 right join --完整外部连接,左向外连接和右向外连接的合集 full join --交叉连接,也称笛卡儿积。返回左表中的每一行与右表中所有行的组合 cross join --补充: --左向外连接,返回左边表所有符合条件的, --注意这里没有第二个加号,会直接过滤掉数据,只显示符合条件的记录 select * from a, b where a.id = b.id(+) and b.id = 2; ID ID ---------- ---------- 2 2 --左向外连接,返回左边表所有符合条件的 --注意where上第二个加号,它的作用是修改右边表记录的显示,例如如果b.id(+) = 2,显示为2,否则显示null select * from a, b where a.id = b.id(+) and b.id(+) = 2; ID ID ---------- ---------- 2 2 3 1
相关推荐
1. **连接管理**:DBD::Oracle 提供了连接到Oracle服务器的功能,允许Perl脚本创建、管理和关闭数据库会话。通过DBI的connect方法,可以指定数据库连接参数,如数据库名、用户名、密码和连接字符串。 2. **SQL执行*...
### Oracle通用连接(Generic Connectivity)与PostgreSQL集成详解 #### 一、引言 在数据库领域,Oracle通用连接(Generic Connectivity)提供了一种强大的机制,允许Oracle数据库通过标准的ODBC或OLE DB接口来访问...
Toad for Oracle:Oracle数据库连接与配置教程.docx
错误描述:oracle远程连接服务器出现 ORA-12170 TNS:连接超时 错误检查:有很多是oracle自身安装的问题,但是我这里服务器配置正常,监听正常,服务正常,远程可以ping通服务器。 这里主要是防火墙问题,解决办法: ...
《成功之路:Oracle 11g学习笔记》共24章,主要介绍了Oracle安装、干净卸载Oracle、数据库启动关闭、Oracle网络配置等相关内容。在介绍Oracle系统管理的知识以后,将介绍与开发相关的内容(如PL/SQL基础知识、存储过程...
总结起来,这个“perl oracle dbd zip”资源包包含的内容可能包括DBD::Oracle模块的源代码、与Oracle数据库交互的Perl脚本示例、可能的配置或测试工具,以及一个Perl专用的编辑器。对于任何希望使用Perl处理Oracle...
第三章 ORACLE SQL 单行函数 第四章 从多表中查询数据 第五章 用组函数合计数据 第六章 子查询 第七章 操纵数据 第八章 创建和管理表 第九章 内置约束 第十章 创建视图 第十一章 其他数据库对象 第十二章 控制用户...
在C#编程环境中,Oracle数据库的连接和操作通常需要通过ADO.NET或者其他第三方库来实现。在本场景中,我们关注的是一个名为"C#中oracle连接数据库的封装类"的主题,这个主题涉及到创建一个名为`DbHelperOra.cs`的类...
在开发过程中,开发者需要引用oci.dll,并且通常需要配置Oracle客户端环境,包括设置Oracle Home、TNSNAMES.ORA文件(定义数据库连接)以及注册oci.dll所在的目录到系统PATH变量。这样,应用程序在运行时才能找到并...
spring.datasource.primary.url=jdbc:oracle:thin:@localhost:1521:SMARTMES spring.datasource.primary.username=system spring.datasource.primary.password=123456 spring.jpa.hibernate.ddl-auto=create ``` ...
1. ** Thin Driver (jdbc:oracle:thin)**:这是一种轻量级驱动,不依赖于Oracle客户端库。它直接与Oracle数据库服务器通信,适用于网络环境中的远程连接。在描述中提及的“版本为oracle 10.2.0.3.0”,这应该是...
全连接返回两个表的并集,即包括左右表中的所有记录。如果某个记录在一表中不存在,将以 null 值代替。 交叉连接(Cross Join) 交叉连接是将两个表的所有记录组合成一个结果集,生成一个笛卡尔积。例如: SELECT...
"jdbc:oracle:thin:@//hostname:port/service_name", "username", "password"); ``` 4. **JDBC连接池**:在实际应用中,通常会使用连接池管理数据库连接,如C3P0、DBCP或Apache DBCP2等,以提高性能并减少资源...
Oracle compatibility ODAC supports Oracle servers 11g, 10g, 9i, 8i, 8.0, and 7.3, including Oracle 10g Express. ODAC supports x86 versions of the following Oracle clients: 11g, 10g, 9i, 8i, 8.0, and ...
Oracle 数据库表连接(Join)知识点总结 Oracle 数据库表连接(Join)是指从两个或多个表中检索数据,并且将它们组合成一个结果集的操作。连接操作可以大大提高数据库查询的效率,特别是在需要访问多个表中的字段...
在提供的部分内容中,“`jdbc:oracle:thin:@SFMWLHRTRLFQJQA:1521:orclsid`” 是一个典型的 JDBC-Oracle-Thin 连接字符串。下面我们将逐个部分进行解析: - **jdbc:**:表示使用 JDBC 协议。 - **oracle:**:指定...
my $dsn = "dbi:Oracle:host=your_host;sid=your_sid"; my $username = "your_username"; my $password = "your_password"; my $dbh = DBI->connect($dsn, $username, $password) or die $DBI::errstr; my $sth = ...
### JAVA 使用数据库连接池连接Oracle数据库全代码解析 #### 一、概述 本文将详细介绍如何在Java项目中使用Apache DBCP(Database Connection Pool)来连接Oracle数据库,并提供完整的示例代码。通过这种方式,我们...
5. **测试连接**:安装完成后,可以通过Perl脚本测试DBD::Oracle是否工作正常,例如创建一个简单的Perl脚本连接到Oracle数据库并执行SQL查询。 在使用DBD::Oracle时,开发者需要注意以下几点: 1. **连接参数**:...
1. **Oracle Instant Client**:Oracle Instant Client是一套精简版的Oracle客户端工具,它包含了一些必要的运行时库和实用程序,如oci.dll、sqlplus等,可以用于连接到Oracle数据库。相比完整的Oracle客户端,它...