[정보처리기사] 정보처리기사 실기 정리 12 (관계대수 및 관계해석)
미음제
·2021. 8. 26. 19:50
Section 43
관계 대수
관계 대수
관계형 데이터베이스에서 원하는 정보와 그 정보를 검색하기 위해서
어떻게 유도하는가를 기술하는 절차적인 언어이다.
순수 관계 연산자
종류 | 특징 | 기호 |
Select | ✓ 릴레이션에 조재하는 튜플 중에서 선택 조건을 만족하는 튜플의 부분집합을 구하여 새로운 릴레이션을 만드는 연산 ✓ 릴레이션의 행에 해당하는 튜플을 구하는 것이므로 수평 연산이라고도 함 |
시그마(σ) |
Project | ✓ 주어진 릴레이션에서 속성 리스트에 제시된 속성 값만 추출하여 새로운 릴레이션을 만드는 연산 ✓ 연산 결과에 중복이 발생하면 중복이 제거됨 ✓ 릴레이션의 열에 해당하는 속성을 추출하는 것이므로 수직 연산자라고도 함 |
파이(π) |
Join | ✓ 공통 속성을 중심으로 두 개의 릴레이션을 하나로 합쳐서 새로운 릴레이션을 만드는 연산 ✓ Join의 결과는 교차곱을 수행한 다음 Select를 수행한 것과 같음 |
▷◁ |
Division | X ⊃ Y인 두 개의 릴레이션 R(X)와 S(Y)가 있을 때, R의 속성이 S의 속성값을 모두 가진 튜플에서 S가 가진 속성을 제외한 속성만을 구하는 연산 | ÷ |
다음과 같은 <학생> 릴레이션이 있을 때
각 연산자의 결과를 확인하면 다음과 같다.
* Select
<학생> 릴레이션에서,
수학 점수가 100점인 것을 확인하면 다음과 같다.
** Project
<학생> 릴레이션에서,
학번과 이름 속성만 추출하면 다음과 같다.
*** Join
<학생> 릴레이션에 <학과> 릴레이션을 Join 하면
다음과 같다.
**** Division
<학생> 릴레이션과, <학과 : A> 릴레이션이 있을 때
두 릴레이션에 대하여 Division을 한 결과는 다음과 같다.
일반 집합 연산자
수학적 집합 이론에서 사용하는 연산자.
합집합(UNION), 교집합(INTERSECTION), 차집합(DIFFERENCE)을
처리하기 위해서는 합병 조건을 만족해야 한다.
합병 가능한 두 릴레이션 R, S가 있을 때
각 연산의 특징을 요약하면 다음과 같다.
∪∩∨∧≤≥∉ ∈
연산자 | 기능 및 수학적 표현 | 카디널리티(=튜플의 수) |
합집합(UNION) ∪ |
✓ 두 릴레이션에 존재하는 튜플의 합집합을 구하되, 결과로 생성된 릴레이션에서 중복되는 튜플은 제거되는 연산 ✓ R ∪ S = { t | t ∈ R ∨ t ∈ S } * t는 릴레이션 R 또는 S에 존재하는 튜플 |
✓ |R∪S| ≤ |R| + |S| ✓ 합집합의 카디널리티는 두 릴레이션 카디널리티의 합보다 크지 않음 |
교집합(INTERSECTION) ∩ |
✓ 두 릴레이션에 존재하는 튜플의 교집합을 구하는 연산 ✓ R ∩ S = { t | t ∈ R ∧ t ∈ S } * t는 릴레이션 R 그리고 S에 동시에 존재하는 튜플 |
✓ |R∩S| ≤ MIN{|R|, |S|} ✓ 교집합의 카디널리티는 두 릴레이션 중 카디널리티가 적은 릴레이션의 카디널리티보다 크지 않음 |
차집합(DIFFERENCE) - |
✓ 두 릴레이션에 존재하는 튜플의 차집합을 구하는 연산 ✓ R - S = { t | t ∈ R ∧ t ∉ S } * t는 릴레이션 R에는 존재하고 S에는 없는 튜플 |
✓ |R - S| ≤ |R| ✓ 차집합의 카디널리티는 릴레이션 R의 카디널리티 보다 크지 않음 |
교차곱 CARTESIAN PRODUCT X |
✓ 두 릴레이션에 있는 튜플들의 순서쌍을 구하는 연산 ✓ R x S = { r · s | r ∈ R ∧ s ∈ S } * r은 R에 존재하는 튜플이고, s는 S에 존재하는 튜플 |
✓ |R x S| = |R| x |S| ✓ 교차곱은 두 릴레이션의 카디널리티를 곱한 것과 같음 |
관계 해석
관계 데이터의 연산을 표현하는 방법.
원하는 정보가 무엇이라는 것만 정의하는
비절차적 특성을 지닌다.
원하는 정보를 정의할 때는 계산 수식을 사용.
반응형
'정보처리기사' 카테고리의 다른 글
[정보처리기사] 정보처리기사 실기 정리 13 (이상, 함수적 종속) (0) | 2021.08.26 |
---|---|
[정보처리기사] 정보처리기사 실기 정리 11 (관계형 데이터베이스의 제약 조건 - 키(Key), 무결성(Integrity)) (0) | 2021.08.22 |
[정보처리기사] 정보처리기사 실기 정리 10 (E-R(개체 관계) 모델, 관계형 데이터베이스의 구조, 관계형 데이터 모델) (0) | 2021.08.16 |
[정보처리기사] 정보처리기사 실기 정리 9 (데이터 모델의 개념, 데이터 모델의 구성 요소) (0) | 2021.08.14 |
[정보처리기사] 정보처리기사 실기 정리 8 (데이터 전환, 데이터 검증, 오류 데이터 측정 및 정제) (0) | 2021.08.12 |