정보처리기사/데이터베이스 활용

관계대수 - JOIN/DIVISION 연산

glorypang 2025. 10. 18. 12:49
728x90
반응형
SMALL

JOIN (▷◁)

  • 정의: 공통 속성으로 두 릴레이션을 합쳐 새 릴레이션을 만든다.
  • 표기: `R ▷◁D2=D2 S`

예시

R(D1, D2)

D1 D2
A 1
B 2
C 1

 

S(D2, D3)

D2  D3
1 x
1 y
3 z

 

결과

D1  D2 D3
A 1 x
A 1 y
C 1 x
C 1 y

공통 속성 D2=1인 튜플들만 매칭되어 결합됨. (R의 D2=2, S의 D2=3은 매칭 없음)

 

DIVISION (÷)

  • 정의: R(D1, D2)와 S(D2)에서, S가 가진 모든 D2 값을 가진 D1만 골라 D1만 반환.
  • 표기: `R [D1,D2 ÷ D2] S`

예시1

R(D1, D2)

D1  D2
A 1
A 2
A 3
B 1
B 2
C 2
C 3

 

S(D2)

D2
1
2

 

결과

D1
A
B

이유:

  • S는 {1, 2}를 요구
  • A는 {1,2,3} ⊇ {1,2} → 포함 ✅
  • B는 {1,2} ⊇ {1,2} → 포함 ✅
  • C는 {2,3} ⊇ {1,2} 아님 → 제외 ❌

 

예시2

R(D1, D2, D3)

D1  D2  D3
a 1 A
b 1 A
a 2 A
c 2 B

 

S(D2, D3)

D2 D3
1 A

결과

D1 
a
b

 

이유:

  • a는 (1, A)를 가지고 있음 → 포함
  • b도 (1, A)를 가지고 있음 → 포함
  • c는 (1, A)가 없음 → 제외

 

728x90
반응형
LIST