zoukankan      html  css  js  c++  java
  • union的特性,去重与不去重

    转载:https://blog.csdn.net/kingmax54212008/article/details/33762921

    union的特性,去重与不去重


    集合操作有 并,交,差 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 

  • 相关阅读:
    如何用Tensorflow训练模型成pb文件和和如何加载已经训练好的模型文件
    hbase rowkey 设计
    hbase集群region数量和大小的影响
    为什么不建议在hbase中使用过多的列簇
    hive explode 行拆列
    通过livy向CDH集群的spark提交任务
    case when多条件
    spark sql/hive小文件问题
    SQL join
    spark任务调度模式,动态资源分配
  • 原文地址:https://www.cnblogs.com/cq-yangzhou/p/10450606.html
Copyright © 2011-2022 走看看