관계대수의 개요
관계대수(Relational Algebra)의 정의
관계형 데이터베이스에서 원하는 정보와 그 정보를 어떻게 유도하는가를 연산과 규칙으로 기술하는 절차적 언어
관계대수의 특징
- 일반 집합 연산자와 순수 관계 연산자를 이용해 동작
- 특정 시점의 데이터베이스 상태를 변화
관계대수의 연산자 기능
관계대수의 일반 집합 연산자
연산자 |
기호 |
상세 설명 |
합집합(UNION) |
∪ |
릴레이션 R 또는 S에 속하는 튜플 t로 구성된 릴레이션 |
교집합(INTERSECT) |
∩ |
두 릴레이션 R과 S에 공통적으로 속해 있는 튜플 t로만 구성된 릴레이션 |
차집합(DIFFERENCE) |
− |
릴레이션 R에는 있지만 S에는 없는 튜플 t로만 구성된 릴레이션 |
카티션 프로덕트(CARTESIAN PRODUCT) |
× |
릴레이션 R에 속한 각 튜플 r에 대해 릴레이션 S에 속한 각 튜플 s를 모두 접속시킨 튜플 r.s로 구성된 릴레이션 |
관계대수의 순수 관계 연산자
연산자 |
기호 |
상세 설명 |
셀렉트(SELECT) |
σ |
릴레이션에서 주어진 조건을 만족하는 튜플들을 선택 |
프로젝트(PROJECT) |
π |
주어진 릴레이션에서 애트리뷰트 리스트에 제시된 애트리뷰트만을 추출 |
조인(JOIN) |
⋈ |
공통 속성을 중심으로 두 릴레이션을 하나로 합쳐서 새로운 릴레이션을 생성 |
디비전(DIVISION) |
÷ |
X⊃Y인 릴레이션에서 R(X)와 S(Y)가 있을 때, R의 속성이 S의 속성값을 모두 가진 튜플에서 S가 가진 속성을 제외한 속성만을 구함 |
관계대수의 한계
- 산술 연산이 불가
- 집단 함수 미지원
- 정렬 표현 불가
- 데이터베이스 수정 불가