정보시스템감리사/기출문제_20년_21회
60_조인선택도
론리나잇
2025. 4. 22. 00:04
📘 문제 요약
- 릴레이션 R의 튜플 수: |R| = 8
- 릴레이션 S의 튜플 수: |S| = 3
- 조인 조건: R.A = S.B
- 조인 선택도(js):
$$
js = \frac{|R \bowtie S|}{|R \times S|} = \frac{|R \bowtie S|}{8 \times 3} = \frac{|R \bowtie S|}{24}
$$
🔍 보기별 분석
① B가 S의 기본키일 때 js의 최대값
- S.B는 유일한 값 → S.B는 3개의 고유 값만 가짐
- R.A 값에 따라 조인 결과가 달라지며, 최대 8개의 R 튜플이 매칭 가능
- 조인 결과 최대 8개 가능
- $$
js = \frac{8}{24} = 0.333
$$
② A가 R의 기본키일 때 js의 최대값
- R.A는 유일 → 8개의 유일한 값
- S.B는 3개 뿐 → 최대 3개 R.A 값과만 매칭 가능
- 조인 결과 최대 3개
- $$
js = \frac{3}{24} = 0.125
$$
③ R.A 유일값 수 2, S.B 유일값 수 3일 경우
- 공통되는 유일값이 2개라고 가정할 경우, 조인 결과는 최대 2개
- 단, 이건 가정이므로 불확실
- $$
js = \frac{2}{24} = 0.0833
$$
④ B가 S의 기본키일 때 조인 결과 테이블의 카디널리티
- 보기 ①과 같은 조건 → 최대 8개 조인 결과
- $$
js = \frac{8}{24} = 0.333
$$
📊 조인 선택도(js) 비교 표
보기 번호 | 조건 설명 | 예상 조인 결과 수 | js 계산식 | js 값 | 확정 여부 |
---|---|---|---|---|---|
① | B가 S의 기본키일 때 | 최대 8개 | 8 / 24 | 0.333 | 확정 |
② ✅ | A가 R의 기본키일 때 | 최대 3개 | 3 / 24 | 0.125 | 확정 |
③ | R.A 유일값 2개, S.B 유일값 3개 → 2개 매칭 가정 | 최대 2개? | 2 / 24 | 0.0833 | 불확정 |
④ | B가 S의 기본키일 때 조인 결과 테이블의 카디널리티 | 최대 8개 | 8 / 24 | 0.333 | 확정 |
✅ 최종 결론
- 보기 ③의 js 값은 더 작을 수도 있으나 가정에 의존하므로 불확실
- 보기 ②는 R.A가 기본키인 것이 확정 조건이므로 가장 작은 js 값이 확실하게 보장됨
- 따라서 정답은 ②번