- 오라클 11g XE 버전입니다.
- 오라클 샘플 계정 HR에 접속한 후 진행했습니다. ( 아래 참고 )
> https://hongdori2.tistory.com/4
0. 집합 연산자
집합연산자란 두개 이상의 출력을 합치는 것을 의미합니다.
단, 여기서 조건이 있는데 합치려는 출력의 컬럼이 같아야 합니다.
1. union
: 두개의 출력을 합칩니다. (중복은 하나로 합쳐짐)
예시)
> 부서 번호가 60번 이거나 급여가 5000이하일 때 사번과 급여, 부서번호
- union 없이 표현
select employee_id, salary, department_id
from employees
where department_id = 60 or salary <= 5000;
- union 을 이용
select employee_id, salary, department_id
from employees
where department_id = 60
union
select employee_id, salary, department_id
from employees
where salary <= 5000;
2. union all
: 두개의 출력을 합칩니다. (중복 있음)
select employee_id, salary, department_id
from employees
where department_id = 60
union all
select employee_id, salary, department_id
from employees
where salary <= 5000;
중복되는 행이 3개가 존재해 51개가 아닌 54개의 행이 출력됐습니다.
3. minus
: 두 열을 뺍니다.
예시)
> 부서 번호가 60번 이면서 5000이하가 아닌 사람들의 사번과 급여, 부서번호
select employee_id, salary, department_id
from employees
where department_id = 60
minus
select employee_id, salary, department_id
from employees
where salary <= 5000;
4. intersect
: 두 열의 공통적인 교집합을 출력
select employee_id, salary, department_id
from employees
where department_id = 60
intersect
select employee_id, salary, department_id
from employees
where salary <= 5000;
'DB > Oracle' 카테고리의 다른 글
[Oracle] 오라클 테이블 조회 5 - 오라클 숫자 함수, round, trunc, ceil, floor, mod, abs, power (0) | 2020.05.31 |
---|---|
[Oracle] 오라클 테이블 조회 4 - 오라클 문자열 함수, upper, lower, initcap, length, lengthb, substr, instr, replace, lpad, rpad (0) | 2020.05.31 |
[Oracle] 오라클 테이블 조회 2 - select, where, edit, order by (0) | 2020.05.29 |
[Oracle] 오라클 테이블 조회 1 - 기본 (0) | 2020.05.28 |
[Oracle] 오라클 HR 계정 잠금 해제 - HR 계정 활성화 (0) | 2020.05.28 |
댓글