솜은 코튼
[DB] 관계 대수 (실렉트, 프로젝트, 조인, 디비전, 집단 함수, 그룹화) 본문
순수 관계 연산자
.
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) 오른쪽 외부 조인 (R⟖S)
3) 완전 외부 조인 (R⟗S)
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 |