솜은 코튼

[DB] 관계 대수 (실렉트, 프로젝트, 조인, 디비전, 집단 함수, 그룹화) 본문

DB

[DB] 관계 대수 (실렉트, 프로젝트, 조인, 디비전, 집단 함수, 그룹화)

솜.코 2023. 5. 23. 23:19

 

 

순수 관계 연산자

.

 

 

1. 실렉트 (SELECT, σ)

.

 

실렉트 연산자는 한 릴레이션에서 실렉트 조건을 만족하는 투플들의 부분 집합을 생성한다.

또한 중복되는 행은 제거된다.

 

실렉트 조건은 비교 연산자 =. <>, <=, <, >=, > 등의 비교 연산자,

AND, OR, NOT 등의 부울 연산자를 포함할 수 있다.

 

형식은 'σ<실렉션 조건>(릴레이션)'으로 나타낸다.

 

 

 

 

2. 프로젝트 (PROJECT, π)

.

 

실렉트는 투플을 연산 대상으로 하는 반면, 프로젝트는 애트리뷰트를 연산 대상으로 한다.

 

또한 실렉트는 중복 투플이 존재할 수 없지만 프로젝트는 중복된 투플이 존재할 수 있다.

 

형식은 'π<애트리뷰트 리스트>(릴레이션)'으로 나타낸다.

 

 

 

 

3. 조인 (JOIN, )

.

 

조인 연산자는 두 개의 릴레이션으로부터 연관된 투플들을 결합하는 연산자이다.

 

조인 연산자는 시간이 오래 걸려 효율적으로 수행하는 여러 가지 알고리즘들이 개발되었다.

 

조인에는 세타 조인(θ), 동일 조인(⋈), 자연 조인(N), 외부 조인(⟗), 세미 조인(⋉) 등이 있다.

 

형식은 'R⋈R.attrivute=S.attribute S'으로 나타낸다.

 

 

3.1 동일 조인 (⋈=)

동일 조인 결과는 R과 S의 카티션 곱에 실렉션을 적용한 결과와 동등하다.

 

 

 

 

3.2 자연 조인 (⋈N)

동등 조인의 결과 릴레이션에서 조인 애트리뷰트를 한 개 제외한 것을 자연 조인이라고 한다.

 

 

 

3.3 외부 조인

외부 조인에는 왼쪽 외부 조인, 오른쪽 외부 조인, 완전 외부 조인이 있다.

 

1) 왼쪽 외부 조인 (R⟕S)

 

 

2) 오른쪽 외부 조인 (RS)

 

 

 

3) 완전 외부 조인 (RS)

 

 

 

3.4 세미 조인 (⋉)

세미 조인은 아래 그림으로 예를 들면 R과 S의 공통 애트리뷰트를 추출하여 'πx∩y(S)' 결과를 얻는다.

이때 중복은 제거한다.

 

즉, R⋉S은 릴레이션 R과 S의 교집합 후 출력되는 결과와

릴레이션 R을 자연조인 한 결과이고,

S⋉R은 릴레이션 R과 S의 교집합 후 출력되는 결과와

릴레이션 S를 자연조인 한 결과이다.

 

 

 

 

4. 디비전 (DIVISION, ÷)

.

 

디비전 연산자는 아래 그림으로 예를 들어 보면

 

RESULT1은 'B#' 열의 'b1' 값을 가진 'A#' 값을 출력한 것이고,

RESULT2는 'b2'와 'b4' 모두 갖고 있는 'A#' 값을 출력한 것이다.

 

 

 

5. 집단 함수

.

 

총합(SUM), 평균(AVG), 총 수(COUNT), 가장 큰 수(MAX)가 있다.

 

 

 

 

6. 그룹화

.

 

그룹화는 지정한 애트리뷰트 값에 따라 투플들을 그룹 짓어 결과를 출력한다.

반드시 집단 함수와 같이 사용해야 한다.

 

 

 

 

 

 

 

 

 

 

* 해당 글은 '데이터베이스 배움터' 책을 참고하여 작성하였습니다. 출처: ORACLE을 기반으로 하는 데이터베이스 배움터 (홍의경)

'DB' 카테고리의 다른 글

[DB] 정보 처리 시스템  (0) 2023.05.31
[DB] 무결성 제약 조건  (0) 2023.05.28
[DB] 관계 데이터 모델 (릴레이션)  (0) 2023.05.28
[DB] E-R 다이어그램 (개체-관계 모델)  (0) 2023.05.28
[DB] 관계 대수 (집합 연산자)  (0) 2023.05.23