zoukankan      html  css  js  c++  java
  • Oracle中的集合运算

    前言:在实际项目中对多表进行集合运算使用非常广泛,以下是对集合操作的部分总结。

    一,建表,插入测试数据

     1 create table a(
     2   numbers integer
     3 )
     4 
     5 create table b(
     6   numbers integer
     7 )
     8 
     9 insert into a values(7956);
    10 insert into a values(7953);
    11 insert into a values(7966);
    12 insert into a values(7933);
    13 commit
    14 
    15 insert into b values(7979);
    16 insert into b values(7955);
    17 insert into b values(7968);
    18 insert into b values(7933);
    19 commit

    二,求并集,返回a,b两表中所有记录,[去重]

    1 select numbers from a
    2 union
    3 select numbers from b

    三,求并集,返回a,b两表中所有记录,[不去重]

    1 select numbers from a
    2 union all
    3 select numbers from a

    四,求差集,返回只存在a表中的记录,剔除a表与b表相同的记录

    1 --方法一
    2 select numbers from a where numbers not in (select numbers from b )
    3 --方法二
    4 select numbers from a 
    5 minus 
    6 select numbers from b

    五,求交集,返回a表与b表中相同的记录

    1 --方法一
    2 select numbers from a where numbers in (select numbers from b )
    3 --方法二
    4 select numbers from a 
    5 intersect
    6 select numbers from b
  • 相关阅读:
    集合容器
    洛谷P3953 逛公园
    洛谷P1967 货车运输
    洛谷P1073 最优贸易
    洛谷P4568 [JLOI2011]飞行路线
    洛谷P1265 公路修建
    洛谷P1503 鬼子进村
    洛谷P1613 跑路
    洛谷P4933 大师
    洛谷P4017 最大食物链计数
  • 原文地址:https://www.cnblogs.com/1016882435AIDA/p/6542843.html
Copyright © 2011-2022 走看看