CS/데이터베이스

[데이터베이스] 10. 관계 데이터 연산 (2)

JIN-JJS 2025. 3. 23. 19:13

1. 확장된 관계 대수 연산자

1) 세미 조인 (Semi Join)

• 표현법: 릴레이션1 ⋉ 릴레이션2

• 설명: 릴레이션2에서 조인 속성을 프로젝트 연산 후, 릴레이션1과 자연 조인하여 결과 릴레이션을 생성하는 연산

• 장점: 불필요한 속성을 미리 제거하여 조인 연산의 비용을 줄임

 

2) 외부 조인 (Outer Join)

• 설명: 자연 조인 연산에서 제외되는 튜플도 결과 릴레이션에 포함시키는 조인

• 처리 방식: 속성 값이 없는 경우, NULL 값으로 처리됨

 

종류

• 왼쪽 외부 조인 (Left Outer Join)

- 표현법: 릴레이션1 ⟕ 릴레이션2

- 특징: 릴레이션1의 모든 튜플을 포함하고, 릴레이션2에 일치하는 값이 없는 경우 NULL로 채움

 

• 오른쪽 외부 조인 (Right Outer Join)

- 표현법: 릴레이션1 ⟖ 릴레이션2

- 특징: 릴레이션2의 모든 튜플을 포함하고, 릴레이션1에 일치하는 값이 없는 경우 NULL로 채움

 

• 완전 외부 조인 (Full Outer Join)

- 표현법: 릴레이션1 ⟗ 릴레이션2

- 특징: 두 릴레이션에 있는 모든 튜플을 포함하며, 일치하는 값이 없으면 NULL로 채움

 

 

2. 프로그래밍 언어 유형

1) 절차적 언어 (Procedural Language)

• 설명: 개발자가 처리 절차(순서와 방법)를 처음부터 끝까지 정의하는 언어

• 특징: "어떻게(HOW) 처리할 것인지"를 프로그래밍함

• 예시: COBOL, JAVA, C

 

2) 비절차적 언어 (Non-Procedural Language)

• 설명: 원하는 데이터가 "무엇(WHAT)인지"만을 기술하는 언어

• 특징: 처리 방법이 아닌 결과에 초점을 맞춤

• 예시: SQL, 관계 해석


이 내용은 휴넷사회복지평생교육원의 데이터베이스 강의를 듣고 정리한 것입니다.