1、创建测试数据:
CREATE TABLE TBL_TEST1(F_ID NUMBER(10) PRIMARY KEY);
CREATE TABLE TBL_TEST2(D_ID NUMBER(10) PRIMARY KEY, F_ID NUMBER(10));
BEGIN
FOR I IN 1 .. 3 LOOP
INSERT INTO TBL_TEST1 VALUES (I);
INSERT INTO TBL_TEST2 VALUES (I, I);
END LOOP;
FOR I IN 4 .. 5 LOOP
INSERT INTO TBL_TEST1 VALUES (I);
END LOOP;
FOR I IN 4 .. 5 LOOP
INSERT INTO TBL_TEST2 VALUES (I, 0);
END LOOP;
COMMIT;
END;
/
生成的数据如下:
SQL> SELECT * FROM TBL_TEST1;
F_ID
-----------
1
2
3
4
5
SQL> SELECT * FROM TBL_TEST2;
D_ID F_ID
----------- -----------
1 1
2 2
3 3
4 0
5 0
2、内连接:
-- 内连接;
SELECT * FROM TBL_TEST1 T1, TBL_TEST2 T2 WHERE T1.F_ID = T2.F_ID;
得到的结果如下:
F_ID D_ID F_ID
----------- ----------- -----------
1 1 1
2 2 2
3 3 3
3、右外关联:
-- T1右外关联T2;
SELECT * FROM TBL_TEST1 T1, TBL_TEST2 T2 WHERE T1.F_ID(+) = T2.F_ID;
SELECT *
FROM TBL_TEST1 T1
RIGHT OUTER JOIN TBL_TEST2 T2 ON (T1.F_ID = T2.F_ID);
上面两个SQL是等价的,执行结果如下:
F_ID D_ID F_ID
----------- ----------- -----------
1 1 1
2 2 2
3 3 3
4 0
5 0
4、左外关联:
-- T1左外关联T2;
SELECT * FROM TBL_TEST1 T1, TBL_TEST2 T2 WHERE T1.F_ID = T2.F_ID(+);
SELECT *
FROM TBL_TEST1 T1
LEFT OUTER JOIN TBL_TEST2 T2 ON (T1.F_ID = T2.F_ID);
执行结果如下:
F_ID D_ID F_ID
----------- ----------- -----------
1 1 1
2 2 2
3 3 3
5
4
5、全外关联:
-- 全外关联;
SELECT *
FROM TBL_TEST1 T1
FULL OUTER JOIN TBL_TEST2 T2 ON (T1.F_ID = T2.F_ID);
执行结果如下:
F_ID D_ID F_ID
---------- ----------- -----------
1 1 1
2 2 2
3 3 3
5
4
4 0
5 0
分享到:
相关推荐
#### 一、Oracle关联更新概述 在Oracle数据库中,进行数据更新操作时,有时需要根据另一个表中的数据来更新当前表的数据,这就是所谓的“关联更新”。关联更新通常用于保持两个或多个表之间的一致性,确保数据的...
根据给定的文件信息,我们可以深入探讨Oracle数据库中关于关联查询的知识点,特别是与学生信息表(`tt_student`)和评估规则表(`tt_assess_rule`)相关的操作。 ### Oracle测试题中的关联查询 #### 数据表创建与...
Oracle 基础查询关联查询练习题 Oracle 基础查询关联查询练习题中涉及到多种查询类型,包括基础查询、关联查询、分组查询等。下面我们将对每个练习题的知识点进行详细解释。 1. 基础查询 基础查询是指从数据库中...
在IT行业中,数据库是数据管理和存储的核心,而MySQL和Oracle是两种广泛应用的关系型数据库管理系统(RDBMS)。本文将深入探讨这两个数据库系统及其在实际应用中的相关知识点。 MySQL是一款开源、免费的SQL数据库,...
### Oracle数据库三种主要表连接方式对比 在Oracle数据库中,为了获取来自多个表的数据,我们需要使用不同的连接方式来实现这一目的。本文将详细介绍三种主要的表连接方式:嵌套循环连接(Nested Loop Join,简称NL...
oracle详细表结构关系图,实例,图解
在Oracle数据库中,进行多表关联的批量插入、批量更新和批量删除操作是常见的数据库管理任务,尤其是在处理大量数据时,这些操作能显著提高效率并减少资源消耗。本文将详细探讨这三个方面,并通过实例代码来展示如何...
在Oracle数据库中,多表关联的UPDATE语句用于更新一个表中的数据,这些数据依赖于另一个或多个表的记录。这种操作在数据整合、错误修正或者数据同步时非常常见。以下我们将详细探讨如何使用不同方式执行多表关联的...
本资料“ORACLE ebs 各模块核心表关联”旨在帮助用户理解和掌握EBS系统中的数据结构和表间关系。 首先,我们来看财务管理模块,主要包括总账、应付账款、应收账款、固定资产管理等子模块。例如,总账模块的核心表有...
Oracle数据库中的多表关联UPDATE语句是用于在一个表中更新数据时,依据另一个表的条件进行操作的关键技术。这在处理复杂的数据同步或修正场景时非常有用。在本例中,我们将探讨如何利用多表关联来更新数据,并通过...
Skyline与Oracle数据库坐标关联之Oracle数据库操作说明 数据库操作是指在Skyline与Oracle数据库坐标关联中执行的一系列操作,以确保坐标数据的正确性和一致性。在本文中,我们将详细介绍Skyline与Oracle数据库坐标...
本文将详细介绍两种方法,用于在Oracle中实现两张表关联批量更新其中一张表的数据。 方法一(推荐): 这种方法利用了子查询和`EXISTS`子句。首先,我们在`SET`子句中创建一个子查询,从表1中选取需要的值(B列)来...
Oracle ebs AP基表和总账关联表结构Oracle ebs AP基表和总账关联表结构
### PL/SQL关联64位Oracle数据库连接指南 在IT领域中,数据库管理与开发工具的应用至关重要。PL/SQL Developer是一款强大的集成开发环境,专为提高PL/SQL的生产力而设计。本文将详细介绍如何通过PL/SQL Developer...
- `HKEY_CLASSES_ROOT` 下与Oracle关联的注册表项。 - `HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\MenuOrder\StartMenu\Programs` 下的Oracle菜单项。 务必小心操作,错误地修改...
Oracle SQL 语句多表关联查询 Oracle SQL 语句多表关联查询是数据库管理系统中的一种常见查询方式,它可以从多个表中检索数据,满足业务需求。本文将详细介绍 Oracle SQL 语句多表关联查询的知识点,包括字符串和...
4. **删除Oracle关联键:** - `HKEY_CLASSES_ROOT` 目录下所有以 Ora、Oracle、Orcl 或 EnumOra 为前缀的键。 5. **删除Oracle程序快捷方式键:** - `HKEY_CURRENT_USER/Software/Microsoft/Windows/Current...
在标题"Oracle Client关联库"中,提到的是Oracle提供的用于连接数据库的客户端软件,它包含了一系列必要的动态链接库(DLLs)和其他支持文件,使得开发人员可以在应用程序中实现与Oracle数据库的交互。这个库对于...
直接运行批处理文件启动Oracle关联的服务进程,非常方便!