`

oracle 的 union union all intersect minus 区别

阅读更多

关键字: oracle union union all intersect minus 

集合操作有 并,交,差 3种运算。 

 union :得到两个查询结果的并集,并且自动去掉重复行。不会排序 

 union all:得到两个查询结果的并集,不会去掉重复行。也不会排序 

 intersect:得到两个查询结果的交集,并且按照结果集的第一个列进行排序 

 minus:得到两个查询结果的减集,以第一列进行排序 

例子: 

  下面是两个表:一个主修课程表,一个选修课程表。 

这个是主修课程表:minors 

     create table minors( 
         minor_id number primary key, 
         minor_name varchar2(30) not null, 
         credit_hour number(2) 
      ) 

插入3条记录:                

      insert into minors values(10101,'计算机原理',4) 
      insert into minors values(10201,'自动控制原理',3) 
      insert into minors values(10301,'工程制图原理',4) 

下面创建选修课程表minors2 

       create table minors2( 
         minor_id number primary key, 
         minor_name varchar2(30) not null, 
         credit_hour number(2) 
       ) 

插入两条记录: 
        insert into minors2 values(10201,'自动控制原理',3) 
       insert into minors2 values(10301,'工程制图原理',4)   

 

(1)
两个表使用union all:得到如下结果 

        select minor_id,minor_name,credit_hour from minors union all 
       select minor_id,minor_name,credit_hour from minors2 order by     credit_hour 

结果: 
    
MINOR_ID MINOR_NAME                     CREDIT_HOUR 
---------- ------------------------------ ----------- 
     10201 自动控制原理                             3 
     10201 自动控制原理                             3 
     10101 计算机原理                               4 
     10301 工程制图原理                             4 
     10301 工程制图原理                             4 

 

 

(2)
两个表使用union :得到如下结果 

select minor_id,minor_name,credit_hour from minors union 
    select minor_id,minor_name,credit_hour from minors2 order by credit_hour 

结果: 

MINOR_ID MINOR_NAME                     CREDIT_HOUR 
---------- ------------------------------ ----------- 
     10201 自动控制原理                             3 
     10101 计算机原理                               4 
     10301 工程制图原理                             4 

 

 

(3)
两个表使用intersect :得到如下结果 

     select minor_id,minor_name,credit_hour from minors intersect 
    select minor_id,minor_name,credit_hour from minors2 

结果: 

MINOR_ID MINOR_NAME                     CREDIT_HOUR 
---------- ------------------------------ ----------- 
     10201 自动控制原理                             3 
     10301 工程制图原理                             4 

 

(4)

两个表使用minus :得到如下结果 

    select minor_id,minor_name,credit_hour from minors minus 
    select minor_id,minor_name,credit_hour from minors2 

结果: 

MINOR_ID MINOR_NAME                     CREDIT_HOUR 
---------- ------------------------------ ----------- 
     10101 计算机原理                               4 

 

<!--EndFragment-->

分享到:
评论

相关推荐

    oracle集合union、union all、intersect、minus

    Oracle 集合操作是指在数据库中对数据进行集合运算的操作,包括 union、union all、intersect 和 minus 等操作。这些操作可以对数据进行合并、交叉、差异等处理,提高数据处理效率。 union 操作 Union 操作是将两...

    Oracle集合操作函数union、intersect、minus.docx

    Oracle 集合操作函数 union、intersect、minus Oracle 集合操作函数是用于合并多条 SELECT 语句的结果的函数,包括 UNION、INTERSECT、MINUS 等。这些函数可以将多个查询结果合并成一个结果集,以便进一步处理和...

    Oracle和SqlServer语法区别

    [{UNION | UNION ALL | INTERSECT |MINUS} SELECT U] [ORDER BY clause] [FOR UPDATE] ``` SqlServer: ``` SELECT select_list FROM table_source [WHERE search_condition] [GROUP BY [ALL] group_by_expression ...

    数据库——的集合运算

    在SQL语言中,最基本的集合运算符包括UNION、UNION ALL、INTERSECT和MINUS。每个运算符都有其特定的用途和规则: 1. UNION运算符:此运算符用于合并两个或多个SELECT语句的结果集,并且会自动去除重复的行,只保留...

    oracle 10g培训资料——SQL第二部分

    在本培训资料的第二部分中,主要介绍了四种高级查询语句:UNION、UNION ALL、INTERSECT和MINUS,这些都是集合操作符,用于合并或比较多个SQL查询的结果。 1. **UNION** 操作符: UNION用于合并两个或更多SELECT...

    第6章 Oracle_DML_高级查询.pptx

    本章将深入探讨四种主要的集合运算:UNION、UNION ALL、INTERSECT 和 MINUS,以及子查询的使用,这些都是Oracle数据库中进行高效数据检索的关键工具。 一、集合运算 1. UNION 运算符:它用于合并两个或多个SELECT...

    Oracle高级sql学习与练习

    1. 集合操作包括UNION、UNION ALL、INTERSECT和MINUS等,它们用于合并两个或多个SELECT语句的结果集。UNION和UNION ALL用于联合多个结果集,不同之处在于UNION ALL会将所有结果包括重复项,而UNION则会自动去除重复...

    Oracle培训教材.doc

    连接两字符串可以使用||,UNION、UNION ALL、INTERSECT和MINUS则用于合并或比较多个查询的结果集。 在SQL查询中,SELECT语句是最基础的部分,用于从表中提取数据。例如,`SELECT * FROM jobs`会显示jobs表的所有列...

    sql语句生成器+支持各大数据库+说明书

    SQL语句生成器的特色 支持几乎所有类型的数据库, ...联合(Union,对于Oracle 支持Union All,Minus,Intersect) 支持将SQL查询语句,替换为插入(Insert into)和更新(Update)语句  附属工具内嵌入Delphi IDE

    SQL语言生成器(delphi)

    1、支持几乎所有类型的数据库, 包括小型(桌面)数据库:...联合(Union,对于Oracle 支持Union All,Minus,Intersect) 4、支持将SQL查询语句,替换为插入(Insert into)和更新(Update)语句 4、附属工具内嵌入Delphi IDE

    Oracle11g学习笔记五

    Oracle 11g支持四种基本的集合操作:UNION、UNION ALL、INTERSECT和MINUS。这些操作允许用户在多个查询结果集中进行合并或对比,以获取特定的数据子集。 1. **UNION**:用于合并两个查询的结果,去除重复的行。例如...

    Sql Server与Oracle的区别

    - **SELECT语句**:尽管基本语法相似,但Oracle支持特定的优化提示和集合运算符如START WITH和CONNECT BY,以及INTERSECT和MINUS,这些在Sql Server中需要通过其他方式实现,比如使用EXISTS和NOT EXISTS子句。...

    Oracle高级操作函数学习笔记

    在提供的内容中,通过DECODE函数实现了工资的区间判断显示,使用CASE语句完成了加薪规则的计算,还演示了如何使用UNION、INTERSECT和MINUS进行集合操作。这些知识点展示了Oracle在数据处理方面的灵活性和高效性,...

    SQL语句教程.pdf

    UNION ALL INTERSECT MINUS 子查询 EXISTS CASE 算排名 算中位数 算总合百分比 算累积总合百分比 SQL 语法 无论您是一位 SQL 的新手,或是一位只是需要对 SQL 复习一下的资料仓储业界老将,您 就来对地方了。这个 ...

    SQL语句生成及分析器

    联合(Union,Union All,Minus,Intersect) 4、SQL语句反向分析 无论多么复杂的语句,都能分析出来(包括SQL各子句中嵌套的SQL语句) 5、数据库视图定义和重建 6、支持将SQL查询语句,替换为插入(Insert into)和更新...

    SQL语句自动生成工具

    支持几乎所有类型的数据库, 包括小型(桌面)数据库:Fox DBF...对于Oracle 支持Union All,Minus,Intersect) &lt;br&gt;支持将SQL查询语句,替换为插入(Insert into)和更新(Update)语句 附属工具内嵌入Delphi IDE

    Oracle.1z0-061 题库

    - **使用集合操作符**:理解并正确使用UNION, UNION ALL, INTERSECT 和 MINUS等操作符。 - **数据排序和过滤**:掌握ORDER BY子句的使用来对数据进行排序,以及使用WHERE子句来筛选数据。 - **表连接的概念**:理解...

Global site tag (gtag.js) - Google Analytics