首页 > 数据库技术 > 详细

oracle集合操作

时间:2019-03-25 14:58:29      阅读:148      评论:0      收藏:0      [点我收藏+]

概述

union , intersect , minus

示意图

技术分享图片

  • union 会排序(第一列的结果进行升序排序,下同)、去重
  • union all 不排序、不去重
  • intersect 排序、去重
  • minus 排序、去重

说明

  1. 集合操作的的对象,类型、列数必须匹配;
  2. order by 只能放在最后,可以按第一个语名的列名、别名、列号进行排序;
  3. 无优先级之分,从上到下执行;

例子


create table employees
(
  employee_id number(8) not null,
  first_name varchar2(20) ,
  last_name varchar2(25) not null,
  email varchar2(25) ,
  phone_number varchar2(20),
  hire_date date not null,
  job_id varchar2(10),
  salary number(8,2),
  commission_pct number(2,2),
  manager_id number(6),
  department_id number(4)
);


insert into employees(employee_id,manager_id,salary,last_name,hire_date) values (1000,100,20000,'Stone',sysdate -200);
insert into employees(employee_id,manager_id,salary,last_name,hire_date) values (1001,101,20000,'Strange',sysdate -100);
insert into employees(employee_id,manager_id,salary,last_name,hire_date) values (1002,101,9000,'Atlas',sysdate -100);
insert into employees(employee_id,manager_id,salary,last_name,hire_date) values (1003,102,9000,'Farley',sysdate -200);
insert into employees(employee_id,manager_id,salary,last_name,hire_date) values (1004,102,9000,'Lake',sysdate -200);
insert into employees(employee_id,manager_id,salary,last_name,hire_date) values (1005,102,9000,'Lance',sysdate -200);
insert into employees(employee_id,manager_id,salary,last_name,hire_date) values (1006,100,9000,'Zoo',sysdate -200);
insert into employees(employee_id,manager_id,salary,last_name,hire_date) values (100,null,80000,'Val',sysdate -100);

select t.* from employees t;

select last_name, manager_id, hire_date, salary from employees
    where manager_id = 100
union
select last_name, manager_id, hire_date, salary from employees
    where hire_date > sysdate - 180
intersect
select last_name, manager_id, hire_date, salary from employees
where salary > 10000

rollback;
;

oracle集合操作

原文:https://www.cnblogs.com/hyang0/p/10593575.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!