: 테이블과 테이블을 합치는 연산
: 스키마가 동일한 결과셋끼리 가능
--레코드끼리 합쳐줌
select * from tblMen
union
select * from tblWomen;
-- SNS > 다량의 데이터 > 하나의 테이블 > 기간별 테이블 분할
select * from 게시판2022;
select * from 게시판2023;
select * from 게시판2024;
--통합 데이터 관리
select * from
(select * from 게시판2022;
union
select * from 게시판2023;
union
select * from 게시판2024;
union)
where 조건;
📌 union, union all의 차이점
create table tblAAA (
name varchar2(30) not null,
color varchar2(30) not null
);
create table tblBBB (
name varchar2(30) not null,
color varchar2(30) not null
);
insert into tblAAA values ('강아지','검정');
insert into tblAAA values ('고양이','노랑');
insert into tblAAA values ('토끼','갈색');
insert into tblAAA values ('거북이','녹색');
insert into tblAAA values ('강아지','회색');
insert into tblBBB values ('강아지','검정');
insert into tblBBB values ('고양이','노랑');
insert into tblBBB values ('호랑이','주황');
insert into tblBBB values ('사자','회색');
insert into tblBBB values ('고양이','검정');
-- union > 수학의 집합 > 중복 제거
select * from tblAAA
union
select * from tblBBB; --8개
-- union all > 중복 허용
select * from tblAAA
union all
select * from tblBBB; --10개
📌 구조가 다르면 에러
-- ORA-01789: 질의 블록은 부정확한 수의 결과 열을 가지고 있습니다.
select * from tblInsa
union
select * from tblTodo;
: 테이블과 테이블을 빼는 연산 (차집합)
: 어느 테이블에서 어느 테이블을 빼는 순서에 따라 결과셋이 다름
select * from tblAAA
minus
select * from tblBBB; -- A-B
select * from tblBBB
minus
select * from tblAAA; --B-A
: 테이블과 테이블의 공통부분을 출력하는 연산 (교집합)
select * from tblAAA
intersect
select * from tblBBB; --2개