강의 출처: '데이터베이스의 원리와 응용' / 백현미 / 한양대학교
http://www.kocw.net/home/cview.do?cid=9c591659f017851e
8. 관계 데이터 연산
관계 데이터 연산: 원하는 데이터를 얻기 위해 릴레이션에 필요한 처리 요구를 수행하는 것
관계 대수: 원하는 결과를 얻기 위해 데이터의 처리 과정을 순서대로 기술
관계 해석: 원하는 결과를 얻기 위해 처리를 원하는 데이터가 무엇인지만 기술(결과의 관점)
릴레이션을 처리하는 연산자는 대표적으로 8개가 존재.
일반 집합 연산자와 순수 관계 연산자로 분류할 수 있다.
일반 집합 연산자: 릴레이션이 튜플의 집합이라는 개념을 이용하는 연산자
<일반 집합 연산자의 특성>
1. 피연산자가 2개 필요
2. 합집합, 교집합, 차집합은 피연산자인 두 릴레이션이 합병이 가능해야 함
합병 가능 조건: 두 릴레이션의 차수가 같을 것, 두 릴레이션에서 서로 대응되는 속성의 도메인이 같을 것.
*카티션 프로덕트 예시
카티션 프로덕트의 결과 릴레이션의 특성
1. 차수는 릴레이션 R과 S의 차수를 더한 것과 같음
2. 카디널리티는 릴레이션 R과 S의 카디널리티를 곱한것과 같음(위의 예시에서 3*3=9)
또한 카티션 프로덕트는 교환적 특징, 결합적 특징이 있음
RXS = SXR
(RXS)XT = RX(SXT)
순수 관계 연산자: 릴레이션의 구조와 특성을 이용하는 연산자
1)셀렉트
하나의 릴레이션을 대상으로 수행, 비교연산자나 논리연산자를 이용해 작성
데이터 언어적 표현법: 릴레이션 where 조건식
교환적 특징이 있음(등급이 골드면서 가격이 200인 것 = 가격이 200이면서 등급이 골드인 것)
2)프로젝트
하나의 릴레이션을 대상으로 수행
데이터 언어적 표현법: 릴레이션[속성리스트]
3)조인
두 릴레이션을 조합하여 결과 릴레이션을 구성
4)디비전
표현법: 릴레이션1/릴레이션2
관계 대수를 이용한 예제
연습문제)
3번답
4번답
5번답
1번답
2번답
3번답
4번답
댓글