`
dushanggaolou
  • 浏览: 172968 次
  • 性别: Icon_minigender_1
  • 来自: 南京
社区版块
存档分类
最新评论

Oracle表的连接(内连、外连......)

 
阅读更多

--笛卡尔集(Cross Join)
        Select * from emp,dept;


--等值连接(Equijoin)(Natural join..on) --------内连接
      select empno, ename, sal, emp.deptno, dname from emp, dept
      where emp.deptno = dept.deptno;


--非等值连接(Non-Equijoin)
      select ename,empno,grade,sal,losal,hisal from emp,salgrade where sal between losal and hisal;
 
--自连接(Self join)
         select e.empno,e.ename,m.empno,m.ename from emp e,emp m where e.mgr = m.empno; 
 
 
--左外联接(Left Outer Join ))---外连接----返回右表全部和左表满足条件的部分 
         select s.sid,s.sname,s1.sid,s1.sname from student s,student1 s1 where s.sid=s1.sid(+); 
 
         select empno,ename,dname from emp left outer join dept on emp.deptno = dept.deptno;
 
--右外联接(Right Outer Join))---外连接 ----返回左表全部和右表满足条件的部分 

         select s.sid,s.sname,s1.sid,s1.sname from student s,student1 s1 where s.sid(+)=s1.sid;
 
         select empno,ename,dname from emp right outer join dept on emp.deptno = dept.deptno;
 
 
--满外联接(Full Outer Join)---外连接 --------在等值连接的基础上将左表和右表的未匹配数据都加上
         select empno,ename,dname from emp full outer join dept on emp.deptno = dept.deptno;
 
--UNION:并集,所有的内容都查询,重复的显示一次
--UNION  ALL:并集,所有的内容都显示,包括重复的
--INTERSECT:交集:只显示重复的
--MINUS:差集:只显示对方没有的(跟顺序是有关系的)

 

eg: 
         CREATE  TABLE  emp20  AS  SELECT  *  FROM  emp  WHERE  deptno=20  ; 
 
--UNION:
          SELECT  *  FROM  emp  UNION  SELECT  *  FROM  emp20  ;        --使用此语句重复的内容不再显示

--UNION  ALL:
          SELECT  *  FROM  emp  UNION  ALL  SELECT  *  FROM  emp20  ; --重复的内容依然显示
 
--INTERSECT
          SELECT  *  FROM  emp  INTERSECT  SELECT  *  FROM  emp20  ;  --只显示了两个表中彼此重复的记录
 
--MINUS   
          SELECT  *  FROM  emp  MINUS  SELECT  *  FROM  emp20  ;         --只显示了两张表中的不同记录  返回差异的记录

 

分享到:
评论

相关推荐

    基于C#连接Oracle数据库Oracle.ManagedDataAccess

    本篇将详细讲解如何使用C#通过Oracle.ManagedDataAccess库实现与Oracle数据库的连接,无需在本地安装完整的Oracle数据库。 首先,Oracle.ManagedDataAccess是Oracle公司提供的一个纯.NET框架的客户端驱动,它允许...

    Oracle.ManagedDataAccess.dllC#连接Oracle10g,11g,12g所需的DLL

    Oracle.ManagedDataAccess.dll是Oracle公司为.NET开发者提供的一个托管数据访问组件,它允许C#等.NET语言直接与Oracle数据库进行交互,而无需在开发机器上安装完整的Oracle客户端。这个DLL文件是Oracle Data Access ...

    Oracle.ManagedDataAccess 最新版(4.122.21.1)

    可采用无客户端远程连接oracle,或在本机使用连接。 使用此驱动可以完全替换掉微软提供的 System.Data.OracleClient, 也可以替换掉Oracle提供的 Oracle.ManagedDataAccess.dll + OCI 组合驱动 另外本次版本升级...

    Oracle.ManagedDataAccess连接Oracle所需dll集合

    压缩包中包含:Oracle.ManagedDataAccess.EntityFramework.dll ,Oracle.ManagedDataAccess.dll和 Oracle.ManagedDataAccess.DTC.dll(64位和32位)

    ODP.NET 方式链接oracle数据库的Oracle.ManagedDataAccess.dll文件取代Oracle.DataAccess.dll

    使用了,ODP.NET 方式链接数据库,只要把...win7 64位ODBC不能使用连接oracle,oracle推出了解决方案,不再划分32位和64位,使用Oracle.ManagedDataAccess.dll连接oracle,可以免安装oracle客户端进行oracle全托管操作

    c#连接oracle方法 本地无需安装oracle 内有文档说明Oracle.ManagedDataAccess.dll

    3. 在“浏览”选项卡中,找到`Oracle.ManagedDataAccess.dll`文件(在这个案例中,该文件存在于压缩包内)并添加。 接下来,你需要在C#代码中导入对应的命名空间: ```csharp using Oracle.ManagedDataAccess....

    oracle.jdbc.driver.oracledriver Oracle JDBC驱动包 ojdbc6

    总之,Oracle JDBC驱动包,特别是ojdbc6版本,对于Java开发者来说是连接和操作Oracle数据库不可或缺的一部分,它提供了丰富的功能和灵活性,适应各种开发场景。了解和掌握其使用方法和最佳实践,对于提升Java应用与...

    Navicat 连接数据库Oracle 12c ocr.dll连接资源包

    描述中的“安装Oracle 12c 用Navicat for Oracle连接数据库 cannot load OCI DLL”进一步明确了问题的核心。OCI(Oracle Call Interface)是Oracle数据库提供的一套API,用于开发应用程序与数据库进行交互。当用户...

    DDTek.Oracle oracle 无客户端直联,带授权

    "无客户端直联"意味着它使用纯.NET组件来实现与Oracle服务器的连接,简化了部署过程。 描述中提到的"C#直接联oracle无需客户端"进一步证实了这个库是为C#程序员提供的,使他们能够利用C#语言的特性直接与Oracle...

    oracle ManagedDataAccess连接实例

    在"Oracle C# ManagedDataAccess.dll连接的小实例"中,我们将探讨如何使用OMDA库来建立和管理与Oracle数据库的连接。首先,你需要确保已经在项目中引用了Oracle ManagedDataAccess Client NuGet包,这样可以在项目中...

    C# winform连接Oracle数据库(直接引用Oracle.ManagedDataAccess.dll使用)

    项目中有个功能需要从一台Oracle数据库获取数据,本以为是很简单的事情,直接将原来的SqlClient换成OracleClient调用,结果远没自己想的简单。有很多需要安装Oracle客户端,网上这方面搜索后,太多的文章,还要不停...

    Oracle.ManagedDataAccess.dll.rar

    Oracle.ManagedDataAccess.dll是Oracle公司为.NET开发者提供的一个托管数据访问组件,它允许C#等.NET语言的应用程序直接与Oracle数据库进行交互,无需依赖传统的Oracle客户端软件。这个RAR压缩包包含了两个不同版本...

    ORACLE表连接方式

    本文将对Oracle中的几种主要表连接方式进行详细介绍:内连接(Inner Join)、自然连接(Natural Join)、左外连接(Left Outer Join)、右外连接(Right Outer Join)、笛卡尔连接(Cartesian Join)、索引连接...

    oracle多表连接技巧

    ### Oracle多表连接技巧详解 #### 一、引言 在Oracle数据库中,多表连接是一种非常实用且常用的技术,它允许用户从多个表中获取数据,并基于特定条件进行匹配和整合。本文将详细介绍Oracle中多表连接的各种类型及其...

    Oracle.ManagedDataAccess.zip

    Oracle.ManagedDataAccess 是Oracle公司为.NET Framework和.NET Core提供的一款官方驱动,它使得开发者能够方便地在C#等.NET环境中连接和操作Oracle数据库。这个压缩包包含了几个关键组件,帮助我们理解Oracle数据库...

    C#使用Oracle.ManagedDataAccess.dll轻松访问oracle数据库

    Console.WriteLine("已成功连接到Oracle数据库!"); // 这里可以执行SQL查询、存储过程等操作 } } } ``` `OracleConnection`类用于建立到Oracle数据库的连接,`connectionString`参数包含了数据库的相关信息,...

    c#连接Oracle的快速方法,使用Oracle.ManagedDataAccess的综合教程,全开源

    C#连接Oracle的快速方法,使用Oracle.ManagedDataAccess的综合教程,全开源 1)直接输入Oracle数据库IP\用户名、密码等信息,就可以连接数据库 2)已经写好了一个操作类OracleHelper,可以非常方便的操作数据库返回...

Global site tag (gtag.js) - Google Analytics