728x90
📌 관계 데이터 연산의 개념
데이터 모델은 데이터 구조, 연산, 제약조건이 3가지로 구성된다.
여기서 연산이란 원하는 데이터를 얻기 위해 릴레이션에 필요한 처리 요구를 수행하는 것이다.
관계 데이터 연산이라고 불리는 연산은 두 가지로 나뉜다.
- 관계 대수 : 원하는 결과를 얻기 위해 데이터 처리 과정을 순서대로 기술하는 절차 언어이다.
- 관계 해석 : 원하는 결과를 얻기 위해 처리를 원하는 데이터가 무엇인지만 기술하는 비절차 언어이다.
여기서 데이터에 대한 처리 요구를 Query(질의)라고 한다.
📌 관계 대수
✔️ 관계 대수의 개념과 연산자
처리 과정을 순서대로 기술하는 언어인 관계 대수는 연산자들의 집합으로도 정의할 수 있다.
여기서 피연산자는 릴레이션이 된다. 따라서 결과물도 릴레이션이 될 것이다. 대표적인 8개의 연산자를 특성에 따라 집합 연산자와 순수 관계 연산자로 나눌 수 있다.
✔️ 일반 집합 연산자
릴레이션에 집합의 개념을 이용하는 연산자이다. 두 가지 제약조건이 있다.
- 연산을 위해서 2개의 피연산자(릴레이션)가 필요하다.
- 2개의 릴레이션이 합병 가능해야 한다. (차수와 도메인이 같다)
1️⃣ 합집합
- 제약조건을 만족하는 두 릴레이션 R과 S의 합집합은 R∪S로 표현한다.
- 중복된 값은 한 번만 나타난다. (집합의 특징)
- 교환 법칙과 결합 법칙이 성립한다.
2️⃣ 교집합
- 제약조건을 만족하는 두 릴레이션 R과 S의 교집합은 R∩S로 표현한다.
- 교환 법칙과 결합 법칙이 성립한다.
3️⃣ 차집합
- 제약조건을 만족하는 두 릴레이션 R과 S의 차집합은 R-S로 표현한다.
4️⃣ 카티션 프로덕트
- 두 릴레이션 R과 S의 카티션 프로덕트는 R×S로 표현한다.
- 각 릴레이션의 튜플들을 모두 연결해서 새로운 릴레이션을 리턴한다.
- 교환 법칙과 결합 법칙이 성립한다.
✔️ 순수 관계 연산자
릴레이션의 구조와 특성을 이용하는 연산자이다.
일반 관계 연산자와 다르게 꼭 2개의 피연산자를 필요하지 않은 연산도 있다.
1️⃣ 셀렉트
- 조건을 만족하는 튜플만 선택해 결과 릴레이션을 구성한다.
- 조건식에 비교 연산자(>, ≥, <, ≤, =, ≠)와 논리 연산자(∧, ∨, ¬)를 이용할 수 있다.
- 교환 법칙이 성립한다.
2️⃣ 프로젝트
- 선택한 속성에 해당하는 값으로 결과 릴레이션을 구성한다.
- 결과 릴레이션에 튜플들은 중복되지 않는다. (기본 특성 유지)
3️⃣ 조인
- 조인 속성을 이용해 두 릴레이션을 조합하여 하나의 결과 릴레이션을 구성한다.
- 조인 속성이란? 두 릴레이션이 공통으로 가지고 있는 속성이다.
- 좀더 일반화된 조인을 세타 조인이라고 한다. 조건식을 만족하는 두 릴레이션을 조합하는 것이다.
4️⃣ 디비전
- 두 릴레이션 R과 S의 디비전 연산은 R÷S로 표현한다.
- S의 모든 튜플과 관계있는 릴레이션 R의 튜플로 결과 릴레이션을 구성한다.
✔️ 확장된 관계 대수 연산자
1️⃣ 세미 조인
- 두 릴레이션 R과 S의 세미 조인 연산은 R⋉S로 표현한다.
- S의 조인 속성으로 만들어진 프로젝트 릴레이션을 릴레이션 R과 조인한다.
- 교환 법칙이 성립하지 않는다.
2️⃣ 외부 조인
- 두 릴레이션 R과 S의 외부 조인 연산은 R⟗S로 표현한다.
- 일반 조인 시 연산에 제외된 모든 튜플을 결과에 포함시킨다.
'개인 공부 > DB (데이터베이스 개론)' 카테고리의 다른 글
데이터베이스 개론 : 관계 데이터 모델 (5장) (0) | 2022.09.07 |
---|---|
데이터베이스 개론 : 데이터베이스 기본 개념 (1장) (0) | 2022.07.19 |
댓글