`
chenhua_1984
  • 浏览: 1263165 次
  • 性别: Icon_minigender_1
  • 来自: 杭州
文章分类
社区版块
存档分类
最新评论

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)  

两个表使用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

两个表使用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

两个表使用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

两个表使用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
4
0
分享到:
评论
1 楼 jmu 2009-03-17  
不错  收藏了

相关推荐

    oracle集合union、union all、intersect、minus

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

    Oracle中的Union、Union_All、Intersect、Minus

    在Oracle数据库中,`Union`, `Union_All`, `Intersect`, 和 `Minus` 是四种用于合并或比较多个查询结果集的SQL操作符。这些操作符提供了灵活的数据处理能力,允许用户根据具体需求来管理和筛选数据。 ### Union `...

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

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

    oracle-sql-select语句的使用方法.doc

    本文件详细介绍了SELECT语句的使用方法,涵盖了基本的select语句格式、分组、排序以及与集合运算符(如union、union all、intersect、minus)相关的应用。 首先,SELECT语句的基本格式包括选择列表、FROM子句以及可...

    oracle常用函数汇总大全

    * 集合运算符:INTERSECT、UNION、UNION ALL、MINUS 等。 日期和时间函数 Oracle 提供了多种日期和时间函数来处理日期和时间数据。 * TO_DATE 函数:将字符串转换为 DATE 类型,例如 TO_DATE('2007-11-02 13:45:...

    数据库——的集合运算

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

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

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

    Oracle高级sql学习与练习

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

    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 ...

    第6章 Oracle_DML_高级查询.pptx

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

    Oracle培训教材.doc

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

    Oracle高效能SQL设计

    首先,集合操作是SQL中重要的数据操作方式,包括UNION、UNION ALL、INTERSECT以及MINUS。这些操作能够帮助我们将多个查询结果集进行合并或比较,其中UNION用于合并两个或多个SELECT语句的结果集,并去除重复行;...

    Oracle11g学习笔记五

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

    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

    Oracle高级操作函数学习笔记

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

    Oracle性能问题总结

    * 避免使用耗费资源的操作:带有 DISTINCT,UNION,MINUS,INTERSECT,ORDERBY 的 SQL 语句会启动 SQL 引擎,执行耗费资源的排序(SORT)功能 表设计和其他 * 建立数据库表时要尽量避免不必要的冗余项,但是为了提高...

    MySQL实现差集(Minus)和交集(Intersect)测试报告

    MySQL数据库在标准SQL语法中并未直接提供`MINUS`和`INTERSECT`这两个操作符,这与某些其他数据库系统(如Oracle)不同。然而,这并不意味着在MySQL中无法实现相同的功能。开发者可以通过巧妙地组合其他SQL语句来达到...

    数据库开发 Oracle数据库 SQL开发教程 第08章 集合运算(共20页).pdf

    集合运算包括联合(UNION)、完全联合(UNION ALL)、相交(INTERSECT)和相减(MINUS)四种基本操作。 1. **联合(UNION)**: 联合操作用于合并两个或更多查询的结果,去除重复行,并按第一列默认升序排序。联合...

Global site tag (gtag.js) - Google Analytics