프로그래밍 언어/SQL
[SQL] 관계형 대수 - 일반 집합 연산자와 순수 관계 연산자
타밍
2023. 6. 27. 14:18
[일반 집합 연산자]
1. UNION 연산 - 수학적 합집합

UNION 연산은 공통 교집합의 중복을 없애기 위한 사전 작입으로, 정렬 작업이 발생한다.
SQL 기능 - UNION
2. UNION ALL - UNION+중복허용
UNION 연산에서 교집합의 중복을 허용한다.
UNION과 UNION ALL의 출력 결과가 같다면, 응답 속도 향상이나 자원 효율 측면에서 데이터 정렬 작업이 발생하지 않는 UNION ALL 사용을 권장한다.
3. INTERSECTION 연산 - 수학의 교집합

SQL 기능 - INTERSECT
4. DIRRERENCE 연산 - 수학의 차집합

SQL 기능 - EXCEPT(오라클은 MINUS)
5. PRODUCT(CARTESIAN PRODUCT) 연산 - 수학의 곱집합

JOIN 조건이 없는 경우 생길 수 있는 모든 데이터의 조합을 말한다 (M*N)
SQL 기능 - CROSS JOIN
[순수 관계 연산자]
1. SELECT 연산 - WHERE 절의 조건절 기능

2. PROJECT 연산 - SELECT 절의 칼럼 선택 기능

3. (NATURAL) JOIN - JOIN 기능

4. DIVIDE (현재 사용X)
나눗셈과 비슷한 개념으로 왼쪽의 집합을 'XZ'로 나누었을때, 'XZ'를 모두 갖고 있는 것이 답이 되는 기능