oracle中常用连接之我见

2024-05-11 00:08
文章标签 oracle 连接 常用 之我见

本文主要是介绍oracle中常用连接之我见,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

测试脚本:

创建左表:

createtable L as
select'left_1'as str,'1'as v from dual
unionall
select'left_2'as str,'2'as v from dual
unionall
select'left_3'as str,'3'as v from dual
unionall
select'left_4'as str,'4'as v from dual;

创建右表:

createtable R as
select'right_3'as str,'3'as v,1as status from dual
unionall
select'right_4'as str,'3'as v ,0as status from dual
unionall
select'right_5'as str,'4'as v ,0as status from dual
unionall
select'right_6'as str,'5'as v ,0as status from dual;

1. 内连接

定义:就是2张表的相关联的字段进行连接。

特点:该方式返回两张表相匹配的数据。

语句:

select l.str as left_str, r.str as right_strfrom Linnerjoin Ron L.v = R.vorderby1, 2;
等价于:

select l.str as left_str, r.str as right_strfrom L, Rwhere L.v = R.vorderby1, 2;
运行结果:


2. 左连接

定义:就是2张表中左表是主表,相关联的字段中,主表的所有字段全部显示出来,另一表只返回一部分数据。

特点:该方式的左表是主表,左表中返回所有的数据,右表中只返回与左表匹配的数据。

语句:

select l.str as left_str, r.str as right_strfrom L leftjoin Ron L.v = R.vorderby1, 2;
等价于:

select l.str as left_str, r.str as right_strfrom L, Rwhere L.v = R.v(+)orderby1, 2;

运行结果:


3. 右连接

定义:就是2张表中右表是主表,相关联的字段中,主表的所有字段全部显示出来,另一表只返回一部分数据。

特点:该方式的右表是主表,右表中返回所有的数据,左表中只返回与左表匹配的数据。

语句:

select l.str as left_str, r.str as right_strfrom L rightjoin Ron L.v = R.vorderby1, 2;
等价于:

select l.str as left_str, r.str as right_strfrom L, Rwhere L.v(+) = R.vorderby1, 2;

运行结果:


4.  全连接

定义:就是2张表中,相关联的字段中,所有的字段全部显示出来。

特点:该方式的左右表中返回所有的数据,但只有匹配的数据显示在同一行,非匹配的数据行只显示一个表中的数据。

语句:

select l.str as left_str, r.str as right_strfrom L fulljoin Ron L.v = R.vorderby1, 2;
等价于:

select l.str as left_str, r.str as right_strfrom L, Rwhere L.v = R.v(+)
union
select l.str as left_str, r.str as right_strfrom L, Rwhere L.v(+) = R.vorderby1, 2;
运行结果:



这篇关于oracle中常用连接之我见的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/977945

相关文章

Oracle查询表结构建表语句索引等方式

《Oracle查询表结构建表语句索引等方式》使用USER_TAB_COLUMNS查询表结构可避免系统隐藏字段(如LISTUSER的CLOB与VARCHAR2同名字段),这些字段可能为dbms_lob.... 目录oracle查询表结构建表语句索引1.用“USER_TAB_COLUMNS”查询表结构2.用“a

MySQL常用字符串函数示例和场景介绍

《MySQL常用字符串函数示例和场景介绍》MySQL提供了丰富的字符串函数帮助我们高效地对字符串进行处理、转换和分析,本文我将全面且深入地介绍MySQL常用的字符串函数,并结合具体示例和场景,帮你熟练... 目录一、字符串函数概述1.1 字符串函数的作用1.2 字符串函数分类二、字符串长度与统计函数2.1

Redis客户端连接机制的实现方案

《Redis客户端连接机制的实现方案》本文主要介绍了Redis客户端连接机制的实现方案,包括事件驱动模型、非阻塞I/O处理、连接池应用及配置优化,具有一定的参考价值,感兴趣的可以了解一下... 目录1. Redis连接模型概述2. 连接建立过程详解2.1 连php接初始化流程2.2 关键配置参数3. 最大连

Oracle数据库定时备份脚本方式(Linux)

《Oracle数据库定时备份脚本方式(Linux)》文章介绍Oracle数据库自动备份方案,包含主机备份传输与备机解压导入流程,强调需提前全量删除原库数据避免报错,并需配置无密传输、定时任务及验证脚本... 目录说明主机脚本备机上自动导库脚本整个自动备份oracle数据库的过程(建议全程用root用户)总结

MySQL 内存使用率常用分析语句

《MySQL内存使用率常用分析语句》用户整理了MySQL内存占用过高的分析方法,涵盖操作系统层确认及数据库层bufferpool、内存模块差值、线程状态、performance_schema性能数据... 目录一、 OS层二、 DB层1. 全局情况2. 内存占js用详情最近连续遇到mysql内存占用过高导致

Linux系统中查询JDK安装目录的几种常用方法

《Linux系统中查询JDK安装目录的几种常用方法》:本文主要介绍Linux系统中查询JDK安装目录的几种常用方法,方法分别是通过update-alternatives、Java命令、环境变量及目... 目录方法 1:通过update-alternatives查询(推荐)方法 2:检查所有已安装的 JDK方

MySQL字符串常用函数详解

《MySQL字符串常用函数详解》本文给大家介绍MySQL字符串常用函数,本文结合实例代码给大家介绍的非常详细,对大家学习或工作具有一定的参考借鉴价值,需要的朋友参考下吧... 目录mysql字符串常用函数一、获取二、大小写转换三、拼接四、截取五、比较、反转、替换六、去空白、填充MySQL字符串常用函数一、

Java中Arrays类和Collections类常用方法示例详解

《Java中Arrays类和Collections类常用方法示例详解》本文总结了Java中Arrays和Collections类的常用方法,涵盖数组填充、排序、搜索、复制、列表转换等操作,帮助开发者高... 目录Arrays.fill()相关用法Arrays.toString()Arrays.sort()A

C#连接SQL server数据库命令的基本步骤

《C#连接SQLserver数据库命令的基本步骤》文章讲解了连接SQLServer数据库的步骤,包括引入命名空间、构建连接字符串、使用SqlConnection和SqlCommand执行SQL操作,... 目录建议配合使用:如何下载和安装SQL server数据库-CSDN博客1. 引入必要的命名空间2.

Java通过驱动包(jar包)连接MySQL数据库的步骤总结及验证方式

《Java通过驱动包(jar包)连接MySQL数据库的步骤总结及验证方式》本文详细介绍如何使用Java通过JDBC连接MySQL数据库,包括下载驱动、配置Eclipse环境、检测数据库连接等关键步骤,... 目录一、下载驱动包二、放jar包三、检测数据库连接JavaJava 如何使用 JDBC 连接 mys