외부 조인(Outer Join, ⟗)
정의
- 조인할 양쪽 릴레이션에서, 조인 결과에 포함되지 않는 투플도, 대응하는 투플의 속성값을 모두 NULL 값으로 만들어 결과에 포함함
종류
- left(outer) join : 왼쪽 릴레이션의 모든 투플들이 결과에 포함
- right(outer) join : 오른쪽 릴레이션의 모든 투플들이 결과에 포함
- full(outer) join : 두 릴레이션의 모든 투플들이 결과에 포함
내부조인과의 차이점
내부조인
- 양쪽 테이블에서 서로 교집합인 부분만 이어붙여서 조인 결과에 포함됨
외부조인

leftJoin
- 왼쪽 테이블에 있는 값들은 모두 포함시킴. 오른쪽 테이블의 속성에 해당하는 값은 널로 처리함.
rightJoin
- 오른쪽 테이블에 있는 값들은 모두 포함시킴. 왼쪽 테이블의 속성에 해당하는 값은 널로 처리함.
fullOuterJoin
그룹 연산과 집계 연산
그룹 연산(group operator)
- 기준 속성 값이 같은 투플끼리 그룹핑함
- 생성되는 그룹의 개수는 연산 전에 알 수 없음
- 예 : GROUP학년(학생) - 학년으로 학생을 그룹핑
- 통계 처리를 위한 전처리 작업인 그룹핑을 unary operator로 표현함
집계연산(aggregate operator)
- 기준 속성 값에 대해 통계치를 계산함
- COUNT, SUM, AVG, MIN, MAX, STDDEV, VARIAN
- 예 : AVG성적(등록)
- 주의
- 기준 속성에 NULL 값이 들어있는 투플은 계산에서 제외
- 기준 속성에 중복값이 있는 투플도 계산에 포함
- 통계 처리 기능을 unary operator로 표현함
일반 형식
- (AGG)B(GROUPa(exp))
- exp : 관계 대수식(결과는 릴레이션)
- GROUP : 그룹연산
- AGG : 집계연산
- A : 그룹 연산의 기준 속성
- B : 집계 연산의 기준 속성
결과
- 먼저 그룹 연산을 적용한 후, 각 그룹에 대한 집계 연산을 적용
- 그룹의 개수만큼 투플이 생성됨
예
- AVG나이(GROUP학년(학생)) : 학년별 학생의 평균나이
- AVG기말성적(GROUP학수번호(학생)) : 과목별 기말 평균성적

작명 연산(RENAME,𝛒 : rho)
- 복잡한 관계 대수식을 표현하기 위해서,
중간 결과 릴레이션에 이름을 붙이고, 그것의 속성 명칭을 변경
일반 형식
- 𝛒R(exp) : 관계 대수식 exp의 결과 릴레이션의 이름을 R로 정함
- 𝛒R(A1,A2,...,An)(exp) : 관계 대수식 exp의 결과 릴레이션의 이름을 R로 하고, 속성명을 수정하여 저장함