정보처리기사 필기
시험 직전 요약장
판단 기준과 헷갈리는 개념, 대표 예제를 짧게 확인하세요.
JOIN: INNER·OUTER·SELF·CROSS
원래 이론 →헷갈리는 개념
표를 좌우로 밀어 나머지 열을 확인하세요. 키보드: ←·→, Home·End
| 분류 기준 | 대표 용어 | 무엇을 설명하는가 |
|---|---|---|
| 논리적 결과 구성 방식 | INNER, LEFT, RIGHT, FULL, CROSS | 어떤 행 쌍과 불일치 행을 결과에 남기는가 |
| 입력을 참조하는 방식 | SELF JOIN | 같은 테이블을 서로 다른 역할로 두 번 이상 참조하는가 |
| 조인 조건의 형태 | 동등 조인, 비동등 조인 | =, 범위 비교 등 어떤 조건으로 행을 연결하는가 |
| 물리 실행 알고리즘 | 중첩 루프, 해시, 병합 조인 | DBMS가 논리적 조인을 실제로 어떻게 수행하는가 |
대표 계산·예제
다음 예시는 중복 키, 불일치 키, NULL 키가 JOIN 결과에 미치는 영향을 한 번에 확인하기 위한 데이터다. left_item과 right_item은 설명용 독립 테이블이며 join_key에는 외래키 제약을 두지 않았다.
표를 좌우로 밀어 나머지 열을 확인하세요. 키보드: ←·→, Home·End
| 입력 | 행 ID | join_key | 이름 | enabled |
|---|---|---|---|---|
| 왼쪽 | 1 | 10 | L-10 | - |
| 왼쪽 | 2 | 20 | L-20-A | - |
| 왼쪽 | 3 | 20 | L-20-B | - |
| 왼쪽 | 4 | 30 | L-30 | - |
| 왼쪽 | 5 | NULL | L-NULL | - |
| 오른쪽 | 101 | 10 | R-10 | Y |
| 오른쪽 | 102 | 20 | R-20-A | Y |
| 오른쪽 | 103 | 20 | R-20-B | N |
| 오른쪽 | 104 | 40 | R-40 | Y |
| 오른쪽 | 105 | NULL | R-NULL | Y |
동등 조인 l.join_key = r.join_key에서 특정 값이 왼쪽에 a행, 오른쪽에 b행 있으면 그 값은 a × b개의 일치 행을 만든다.
- 키 10:
1 × 1 = 1행 - 키 20:
2 × 2 = 4행 - 키 30: 오른쪽에 없으므로 일치 0행
- 키 40: 왼쪽에 없으므로 일치 0행
- NULL:
NULL = NULL이 TRUE가 아니므로 일치 0행
따라서 INNER JOIN의 총결과는 5행이다. SQL의 조회 결과는 기본적으로 중복을 자동 제거하지 않으므로, 관계의 다중성으로 같은 왼쪽 행이 여러 번 나타나는 것은 정상일 수 있다.
내 최근 연습 오답
현재 브라우저의 연습 채점 기록에서 공개된 단원과 연결된 오답을 확인합니다.
오답 기록을 확인하고 있습니다.