728x90
반응형
결합 연산 : 가로 방향으로 합치는 것에 관한 연산(조인)
집합 연산 : 세로 방향으로 합치는 것에 관한 연산(합집합, 차집합, 교집합)
(1) A ∩ B (INTERSECT 연산자 사용)
SELECT * FROM A
INTERSECT
SELECT * FROM B
(2) A - B (MINUS 연산자 또는 EXCEPT 연산자 사용)
SELECT * FROM A
MINUS
SELECT * FROM B
(3) B - A (MINUS 연산자 또는 EXCEPT 연산자 사용)
SELECT * FROM B
MINUS
SELECT * FROM A
(4) A U B (UNION 연산자 사용)
SELECT * FROM A
UNION
SELECT * FROM B
MySQL 8.0버전 기준으로 UNION연산자만 지원 (다른 DBMS에서는 모두 지원)
UNION
합집합을 나타내는 연산자로, 중복된 값을 제거해준다.
서로 같은 종류의 테이블(컬럼이 같아야함)에서만 적용이 된다.
SELECT * FROM ITEM
UNION
SELECT * FROM ITEM_NEW;
서로 다른 컬럼을 UNION할 때에는 에러가 난다.
SELECT * FROM ITEM
UNION
SELECT * FROM REVIEW;
서로 다른 종류의 테이블은 조회하는 컬럼을 일치시켜 집합 연산을 가능하게 한다.
SELECT ID FROM ITEM
UNION
SELECT ITEM_ID FROM REVIEW;
UNION ALL
합집합을 나타내는 연산자로, 중복된 값을 제거하지않는다. (교집합 출력)
SELECT * FROM ITEM
UNION ALL
SELECT * FROM ITEM_NEW;
728x90
반응형
'Data > MySQL' 카테고리의 다른 글
[MySQL] 가상테이블을 의미하는 뷰(View)를 쓰는 이유와 생성/대체/수정/삭제 (0) | 2021.01.06 |
---|---|
[MySQL] 서브쿼리(SubQuery) - 외부쿼리, 내부쿼리 (0) | 2021.01.05 |
[MySQL] PRIMARY KEY, FOREIGN KEY 설정하는 다양한 방법 (0) | 2021.01.04 |
[MySQL] 여러 테이블을 합쳐 하나의 테이블처럼 보이게 하는 조인의 종류(join) (0) | 2020.12.31 |
[MySQL] WITH ROLLUP - 항목별 합계에 대한 전체 합계 구하기 (0) | 2020.12.21 |